লুবুন্টুতে (দৃষ্টিশক্তির জন্য) কোনও `লোকেট পয়েন্টার` সহায়ক


9

দৃষ্টি প্রতিবন্ধীদের জন্য একটি অত্যন্ত কঠিন বিষয় হ'ল পর্দার সন্ধানে মাউসটি সন্ধান করা।

সুতরাং সিটিআরএল টিপানোর পরে কিছু অতিরিক্ত ভিজ্যুয়াল মনোযোগ (ফ্ল্যাশিং কমলা বৃত্ত / তরঙ্গ) সক্ষম করুন locate mouseবা locate pointerদিন। (স্ক্রিনশট ধরা শক্ত: বাম দিকে)

উবুন্টুতে মাউস সন্ধান করুন

জুবুন্টুর কাছে এই অমূল্য সরঞ্জাম নেই, এবং উবুন্টু 1 জিবি, ডুয়াল কোর ওল্ড হার্ডওয়ারের জন্য খুব ভারী। জিনোমে এটি আছে, ityক্য আছে, কমিজ আছে, পুদিনা আছে। জুবুন্টু / এক্সএফসিই এর কাছে নেই।

এটি একটি বড় মাউস সম্পর্কে নয়, এটি কিছুটা সহায়তা করে। কিছু ঝলকানি মনোযোগ প্রয়োজন।

উচ্চ বিপরীতে থিম ব্যবহার করা হচ্ছে।

লুবুন্টু যদি এটি থাকে তবে আমি Xu থেকে লুতে স্যুইচ করার বিষয়টি বিবেচনা করি।


আপনি কি বিগ কার্সারের জন্য সিনাপটিক প্যাকেজ ম্যানেজারটি দেখেছেন? এটি আপনার সমস্যার সমাধান করতে পারে।
রেক্স

এটি জুবুন্টুর জন্য ছিল, তারপরে শিরোনামটি লুবুন্টুতে পরিবর্তন করা হয়েছিল তবে অনুচ্ছেদগুলি এখনও জুবুন্টু সম্পর্কে আলোচনা করে। আপনি কি নিশ্চিত যে এটি আপনার অন্যান্য প্রশ্নের সদৃশ নয়
জুবুন্টুতে

না, আমি মনে করি না শিরোনামটি বদলেছে, সম্ভবত আপনি এটিকে স্ক্রিনশট দিয়ে বিভ্রান্ত করছেন। আমি অন্য প্রশ্নে জুবুন্টু সম্পর্কে আগে জিজ্ঞাসা করেছি, এটি লুবুন্টু সম্পর্কে, তবে জুবুন্টু এবং লুবুন্টু সম্পর্কে টিপস তৈরি করছে।
জানঘউ

উত্তর:


5
  • ইন Xubuntu যেতে সেটিংস ম্যানেজার - মাউস এবং টাচপ্যাড - থিম । সেখানে আপনি মাউস কার্সারের আকার আরও বড় করতে পারেন।

    জুবুন্টু মাউস এবং টাচপ্যাড সেটসেটিং

  • এছাড়াও আপনি আপনার মাউসের জন্য অতিরিক্ত থিমগুলি ডাউনলোড করতে পারেন যা মাউস দেখা আরও সহজ করে তোলে। Xfce-look.org দেখুন । আপনি আপনার পছন্দ অনুসারে থিমটি চয়ন করতে পারেন।

    আমি মনে করি এটি আপনার প্রয়োজন অনুসারে সবচেয়ে উপযুক্ত: হলুদ ব্যাকগ্রাউন্ড মাল্টাইজাইজড সহ ডিএমজেড

    লুবুন্টু হিসাবে : এর উইকি সাইট অনুসারে, পিসিম্যানএফএম এবং এলএক্সপ্যানেল কার্সার থিমটি ব্যবহার করে না, আপনাকে কার্সরটি ম্যানুয়ালি পরিবর্তন করতে হবে। আরও তথ্যের জন্য এখানে দেখুন: https://wiki.archlinux.org/index.php/LXDE#Cursors

  • এবং আরও একটি বিকল্প: আপনার উবুন্টুতে মেট পরিবেশ ইনস্টল করুন , এটি 512-এমবি র‌্যাম মেশিনে হালকা ওজনের এবং এটিতে অনুসন্ধান করা মাউস ফ্ল্যাশ বিকল্প রয়েছে।

    sudo apt-add-repository ppa:ubuntu-mate-dev/ppa 
    sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate 
    
    sudo apt-get update && sudo apt-get upgrade 
    sudo apt-get install ubuntu-mate-core ubuntu-mate-desktop
    

    আপনি যদি কেবল একটি পরিবেশ পেতে চান তবে আপনি একক ওএস হিসাবে উবুন্টু মেট সংস্করণটি ডাউনলোড এবং ইনস্টল করতে পারেন (তবে নোট করুন যে আনুষ্ঠানিকভাবে ক্যানোনিকাল দ্বারা সমর্থিত নয়)।

    https://ubuntu-mate.org/longterm/

    আপনি মেট পরিবেশ ইনস্টল করার পরে আপনি মাউস ফ্ল্যাশ সেট করতে পারেন:

    1. মেনুতে যান এবং পছন্দসমূহমাউস এবং টাচপ্যাড নির্বাচন করুন ।
    2. " কন্ট্রোল কী টিপে গেলে পয়েন্টারের অবস্থান প্রদর্শন করুন " এর পাশের টিক চিহ্নটি সক্ষম করুন ।

    বিশদটির জন্য লিঙ্কটি দেখুন: দ্রুত লিনাক্স মিন্ট / উবুন্টুতে মাউস পয়েন্টারটি সন্ধান করুন | আমি একটি পিসি


থেক্স, আমি চেষ্টা করব, আমি ট্রিপাতা থিমটিও চেষ্টা করব।
জানুঘু

ডিএমজেড / হলুদ মাউস থিমটি ঠিক আছে। এটি ট্রিপাতা থিমের সাথে একসাথে (যেমন উন্নত উচ্চ / বিপরীতে) Xubuntu এর জন্য উপযুক্ত প্রকারের সহায়তা সরবরাহ করে offers ধন্যবা
Janghou

5
  1. পয়েন্টার পয়েন্টার.সিটি ডাউনলোড করুন

    wget https://gist.githubusercontent.com/sneetsher/d6d35b6181aa70c27a85/raw/dd874ac535d511c675724fa30d9e12ba5b810c37/locate-pointer.c
    
  2. বিল্ড প্রয়োজনীয়তা ইনস্টল করুন

    sudo apt-get install build-essential libx11-dev libcairo2-dev
    
  3. এটি তৈরি করুন

    gcc `pkg-config --cflags x11 cairo` locate-pointer.c -o locate-pointer `pkg-config --libs x11 cairo` -lm
    
  4. এটি সিস্টেমে অনুলিপি করুন bin/

    sudo cp locate-pointer /usr/local/bin/
    
  5. এটি চালু করতে একটি শর্টকাট তৈরি করুন

  6. সক্ষম করুন কম্পোজিট

    Lubuntu

    1. একটি যৌগিক পরিচালক ইনস্টল করুন

      sudo apt-get install xcompmgr
      
    2. এটির জন্য একটি লাইন যুক্ত করুন

      ~/.config/lxsession/Lubuntu/autostart
      

    Xubuntu

    1. চালান xfwm4-tweaks-settings→ কম্পোজিটার → চেক সক্ষম সক্ষম প্রদর্শন ডিসপোজিটিং

মন্তব্য

  • আপনি সম্মিলিত ছাড়াই একটি কালো পটভূমি পাবেন। : আপনি এটা কাজ পাই নি, তাহলে মত অন্যান্য যৌগিক ম্যানেজার চেষ্টা compton, cairo-compmgr

xcompmgr দিয়ে লুবুন্টু -তে পয়েন্টারটি সন্ধান করুন

জুবুন্টু সেশনে পয়েন্টারটি চিহ্নিত করুন

এখানে locate-pointer.cলিঙ্কটি ভেঙে যাওয়ার সম্পূর্ণ কোড এখানে ।

/*
 * locate-pointer.c
 * Some windows manager missing option to locate mouse pointer as accessibity feature.
 * To get transparent window need to activate `composite` service for wm.
 * Coded in c / xlib so it can work in most wm's.
 * 
 * Coded by:    Abdellah Chelli
 * Date:    January 2015
 *
 * Original code by:    Bernhard R. Fischer <bf@abenteuerland.at>
 *          Cairo graphics and X11/Xlib motion example.
 *          https://www.cypherpunk.at/2014/11/cairo-graphics-and-x11xlib/
 *
 * gcc `pkg-config --cflags x11 cairo` locate-pointer.c -o locate-pointer `pkg-config --libs x11 cairo` -lm
 */

#include <X11/Xlib.h>
#include <X11/Xatom.h>
#include <X11/Xutil.h>
#include <cairo.h>
#include <cairo-xlib.h>

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>

int cairo_check_event(cairo_surface_t *sfc, int block, double *mx, double *my)
{
   char keybuf[8];
   KeySym key;
   XEvent e;
   XSync(cairo_xlib_surface_get_display(sfc),False);
   for (;;)
   {
      if (block || XPending(cairo_xlib_surface_get_display(sfc)))
         XNextEvent(cairo_xlib_surface_get_display(sfc), &e);
      else 
         return 0;

      switch (e.type)
      {
         case ButtonPress:
            return -e.xbutton.button;
         case KeyPress:
            XLookupString(&e.xkey, keybuf, sizeof(keybuf), &key, NULL);
            return key;
         case  MotionNotify:
            *mx = e.xmotion.x;
            *my = e.xmotion.y;

         default:
            //fprintf(stderr, "Dropping unhandled XEevent.type = %d.\n", e.type);
            return 0;
      }
   }
}


static void fullscreen(Display* dpy, Window win)
{
  Atom atoms[2] = { XInternAtom(dpy, "_NET_WM_STATE_FULLSCREEN", False), None };
  XChangeProperty(dpy, win, XInternAtom(dpy, "_NET_WM_STATE", False),
                  XA_ATOM, 32, PropModeReplace, (unsigned char*) atoms, 1);
}


cairo_surface_t *cairo_create_x11_surface(int *x, int *y, double* mx, double *my)
{
   Display *dsp;
   Drawable da;
   Screen *scr;
   int screen;
   cairo_surface_t *sfc;

   XVisualInfo vinfo;
   XSetWindowAttributes win_attr;
   int mousex, mousey;

   if ((dsp = XOpenDisplay(NULL)) == NULL)
      exit(1);
   //XSynchronize(dsp,True);
   screen = DefaultScreen(dsp);
   scr = DefaultScreenOfDisplay(dsp);

   XMatchVisualInfo(dsp, screen, 32, TrueColor, &vinfo);
   win_attr.colormap = XCreateColormap(dsp, DefaultRootWindow(dsp), vinfo.visual, AllocNone);
   win_attr.background_pixel = 0;
   win_attr.border_pixel = 0;

   *x = WidthOfScreen(scr), *y = HeightOfScreen(scr);

   da = XCreateWindow(dsp, DefaultRootWindow(dsp),
           0, 0, *x, *y, 0, vinfo.depth, InputOutput,
           vinfo.visual,
           CWColormap | CWBorderPixel | CWBackPixel, &win_attr);

   fullscreen (dsp, da);

   XSelectInput(dsp, da, PointerMotionMask | ButtonPressMask | KeyPressMask);
   XMapWindow(dsp, da);

   sfc = cairo_xlib_surface_create(dsp, da, vinfo.visual, *x, *y);
   cairo_xlib_surface_set_size(sfc, *x, *y);

   Window rw=DefaultRootWindow(dsp);
   Window cw=da;
   int rx, ry;
   unsigned int mr;
   XQueryPointer(dsp, da, &rw, &cw, &rx , &ry, &mousex, &mousey, &mr);
   *mx = mousex;
   *my = mousey;

   return sfc;
}


void cairo_close_x11_surface(cairo_surface_t *sfc)
{
   Display *dsp = cairo_xlib_surface_get_display(sfc);

   cairo_surface_destroy(sfc);
   XCloseDisplay(dsp);
}

int main(int argc, char **argv)
{
   cairo_surface_t *sfc;
   cairo_t *ctx;
   int x, y;
   struct timespec ts = {0, 5000000};

   double mx, my;
   int c = 0;
   double dr0, dr1, dr2, a;

   int running;

   x = y = 0;

   sfc = cairo_create_x11_surface(&x, &y, &mx, &my);
   ctx = cairo_create(sfc);

   for (running = 1; running;)
   {

      dr0 = 20 * sin(c*M_PI/180.0);
      dr1 = 20 * sin((c+45)*M_PI/180.0);
      dr2 = 20 * sin((c+90)*M_PI/180.0);
      a = c*M_PI/720.0;

      cairo_save (ctx);
      //cairo_set_source_rgba (ctx, 0, 0, 0, 1);
      //cairo_set_operator (ctx, CAIRO_OPERATOR_SOURCE);
      cairo_set_operator (ctx, CAIRO_OPERATOR_CLEAR);
      cairo_paint (ctx); 
      cairo_restore (ctx);

      cairo_push_group(ctx);
      cairo_translate(ctx, mx, my);
      cairo_rotate(ctx,a);
      cairo_translate(ctx, -mx, -my);
      cairo_set_source_rgba(ctx, 0, 0, 0, 0.1);
      cairo_paint(ctx);

      cairo_set_line_join (ctx, CAIRO_LINE_JOIN_MITER);
      cairo_set_source_rgba(ctx, 1, 0, 0, 1);
      cairo_set_line_width (ctx, 30);
      cairo_move_to (ctx, mx-50, my-100-dr0);
      cairo_rel_line_to (ctx, 50, 30);
      cairo_rel_line_to (ctx, 50, -30);
      cairo_move_to (ctx, mx+100+dr0, my-50);
      cairo_rel_line_to (ctx, -30, 50);
      cairo_rel_line_to (ctx, 30, 50);
      cairo_move_to (ctx, mx+50, my+100+dr0);
      cairo_rel_line_to (ctx, -50, -30);
      cairo_rel_line_to (ctx, -50, 30);
      cairo_move_to (ctx, mx-100-dr0, my+50);
      cairo_rel_line_to (ctx, 30, -50);
      cairo_rel_line_to (ctx, -30, -50);
      cairo_stroke(ctx);
      cairo_set_source_rgba(ctx, 1, 0, 0, 0.5);
      cairo_move_to (ctx, mx-50, my-150-dr1);
      cairo_rel_line_to (ctx, 50, 30);
      cairo_rel_line_to (ctx, 50, -30);
      cairo_move_to (ctx, mx+150+dr1, my-50);
      cairo_rel_line_to (ctx, -30, 50);
      cairo_rel_line_to (ctx, 30, 50);
      cairo_move_to (ctx, mx+50, my+150+dr1);
      cairo_rel_line_to (ctx, -50, -30);
      cairo_rel_line_to (ctx, -50, 30);
      cairo_move_to (ctx, mx-150-dr1, my+50);
      cairo_rel_line_to (ctx, 30, -50);
      cairo_rel_line_to (ctx, -30, -50);
      cairo_stroke(ctx);
      cairo_set_source_rgba(ctx, 1, 0, 0, 0.3);
      cairo_move_to (ctx, mx-50, my-200-dr2);
      cairo_rel_line_to (ctx, 50, 30);
      cairo_rel_line_to (ctx, 50, -30);
      cairo_move_to (ctx, mx+200+dr2, my-50);
      cairo_rel_line_to (ctx, -30, 50);
      cairo_rel_line_to (ctx, 30, 50);
      cairo_move_to (ctx, mx+50, my+200+dr2);
      cairo_rel_line_to (ctx, -50, -30);
      cairo_rel_line_to (ctx, -50, 30);
      cairo_move_to (ctx, mx-200-dr2, my+50);
      cairo_rel_line_to (ctx, 30, -50);
      cairo_rel_line_to (ctx, -30, -50);
      cairo_stroke(ctx);
      cairo_pop_group_to_source(ctx);
      cairo_paint(ctx);
      cairo_surface_flush(sfc);

      switch (cairo_check_event(sfc, 0, &mx, &my))
      {
         case 0xff1b:   // Esc
         case -1:       // left mouse button
            running = 0;
            break;
      }

      c++;
      nanosleep(&ts, NULL);
   }

   cairo_destroy(ctx);
   cairo_close_x11_surface(sfc);
   return 0;
}

1
এটি করণীয় তালিকাটি প্রায় 5 বছর আগে লেখা হয়েছিল এবং এটি এখনও মোকাবেলা করা হয়নি disc আমি সেভাবে খুব খারাপ তবে কমপক্ষে আমি এর কিছুটা এক বা দুই বছর সর্বোচ্চ পরে নেব।
WinEunuuchs2Unix

@ উইনউনুছুস ইউনিক্স, ক্যু সেরা সেরা। আমি সর্বদা একই স্ক্রিপ্টে আমার মস্তিষ্কের ঝড়ো ধারণা, সমস্যা (বাগআর, প্রতিক্রিয়া, পরীক্ষার ফলাফল) লিখি। প্রকল্পগুলি (মনের প্রসঙ্গ) স্যুইচ করার সময়, বিভিন্ন ডোমেনে 5W / 5W রোটেশন কাজ করার সময় এটি মনে রাখা শক্ত। শেষ পর্যন্ত, আমি ফিরে আসব না, যদি এর বেশি ব্যবহারকারীর ভিত্তি না থাকে এবং এটি কেবল যথেষ্ট কাজ করে (জনস্বার্থ বা কেবলমাত্র আমার কাছে থাকা সম্পদের অপচয়, বিটিডাব্লু আমি আমার স্ক্রিপ্টের প্রত্যক্ষ ব্যবহারকারী নই)। সুতরাং এখন প্রযুক্তিটি দ্রুত গতিতে চলেছে: এক্স 11 প্রতিস্থাপন করা হয়েছে, এই স্ক্রিপ্টটি মারা গেছে, unityক্য হ্রাস পেয়েছে, xkbmod- সূচক মারা গেছে, x11 প্রতিস্থাপন হয়েছে,
কীবোর্ড_মডিফায়ার্স

3

"ইয়াড" ব্যবহার করে একটি সহজ এবং নোংরা কৌশল রয়েছে যা তুলনামূলকভাবে সহজ উইন্ডোজ উত্পন্ন করার জন্য একটি সরঞ্জাম। (এটি উত্সাহ থেকে একটি কাঁটাচামচ)

সুতরাং, আপনি যদি কোনও স্ক্রিপ্ট তৈরি করেন তবে আসুন content হোম / বিন, নিম্নলিখিত সামগ্রী সহ:

yad --picture  --width=68 --height=68 --no-buttons --size=fit --filename=ANY_PICTURE_YOU_LIKE --timeout=1 --mouse --undecorated  --on-top  > /dev/null 2>&1 

প্রস্থ এবং উচ্চতার মান চিত্রের প্রকৃত আকারের চেয়ে 4 পিক্সেল বেশি হওয়া উচিত।

এটি ছবিটিকে ওভারলে করবে, এক সেকেন্ডের জন্য, মাউসের অবস্থানের উপর, যদি ছবিটি একটি অ্যানিমেটেড জিআইএফ হয় তবে আপনি যা জিজ্ঞাসা করছেন তার সাথে কিছুটা মিল পাবেন।

আপনাকে কেবল আপনার নতুন অ্যাপ্লিকেশনটিতে একটি কীবোর্ড শর্টকাট মানচিত্র করতে হবে।

প্রিলোডার . net এ কিছু দুর্দান্ত অ্যানিমেশন রয়েছে (আমি কপিরাইটের সমস্যাগুলি পরীক্ষা করে দেখিনি)

আশা করি এটা সাহায্য করবে.


আই 3 দিয়ে কাজ করে না):
জিজোর

এটা সত্যিই দুর্দান্ত। এটিকে মাউস অনুসরণ করার কোনও উপায় আছে?
ব্যক্তি 9

1
দুর্দান্ত কৌশল! @ জিজোর, এটি আই 3-তেও কাজ করে। আপনার কেবল for_window [class="Yad"] floating enableআপনার আই 3 কনফিগারেশন ব্যবহার করে উইন্ডোটিকে ভাসমান করা দরকার ।
গৌতম
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.