Що може виправити установку KeePass, яка не копіює та не вставляє в OS X?


8

KeePass не буде копіювати та вставляти, не кажучи вже про автоматичний тип.

Я встановив пакет KeePass 2.18 Mac з http://keepass2.openix.be/ . Я не зміг знайти новіший пакет Mac для KeePass, тому я також замінив усі файли цього пакету на файли з портативного KeePass 2.20.1 (ZIP Package). Це було зі сторінки http://keepass.info/download.html , посилання на фактичний zip: http://downloads.sourceforge.net/keepass/KeePass-2.20.1.zip . Тож я успішно запускаю KeePass 2.20.1.

Я запускаю Mono версії 2.10.9.

Я працюю OS X 10.7.5 на MacBook Pro.

Я не можу повірити, що сайт KeePass торкається сумісності з Mac, коли він не копіює / вставляє. Це досить основна функціональність, якої не вистачає. Пошуки показують, що інші проблеми виникають з 2.18 року, але жодних способів вирішення проблем, жодних повідомлень про помилки.

Хтось зміг вирішити це питання?


Ви пробували KeyPass з Mono 3.0 ? Я не пробував цього, але це може працювати краще.
Старий Про

Відповіді:


7

Документація KeePass в http://keepass.info/help/v2/setup.html#mono , хоча спеціально не згадується про OS X, описує вашу проблему:

Буфер обміну: У деяких системах буфер обміну Mono не працює належним чином. У цьому випадку встановіть пакет xsel. Якщо xselвстановлено, KeePass ≥ 2,20 використовує цю утиліту для операцій з буфером обміну.

Так xselмає допомогти. ( xselдоступний у MacPorts ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ). Джерело доступне тут: http://www.vergenet.net/~conrad/ програмне забезпечення / xsel / # завантажити )

EDIT : Але це не так. Мені було цікаво, тому я склав xselна своєму Mac. Це не вирішило проблему з копіюванням / вставкою (тестовано з Portable KeePass 2.20.1), як я побоювався, я повинен сказати. Чому? Тому що, як зазначено тут, http://www.kfish.org/software/xsel/ xsel - це інструмент, який маніпулює вмістом буфера обміну додатками X11 . X11 надає графічний інтерфейс користувача для Linux та UNIX, але OS X використовує Quartz замість цього, як і я зрозумів (див. Http://www.mono-project.com/WinForms#About_System.Windows.Forms ).

Існує рішення щодо копіювання імені користувача та пароля до буфера обміну, як це пояснено в цій темі http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 :

Урека (sic) . Ваш 2.19 на шляху до копіювання пасти, що працює на MAC через Mono! Ваша кнопка для копіювання імені користувача, а ваша кнопка для копіювання пароля працює зараз !!!

На плакаті вище посилаються на ці кнопки (портативний KeePass 2.20.1, показаний під керуванням у Windows (вибачте, немає Mac поблизу)):

Для копіювання імені користувача:

введіть тут опис зображення

Для копіювання пароля:

введіть тут опис зображення

Редагувати :

Я хотів би поділитися тим, як я компілював, xselякщо комусь це потрібно в OS X:

  1. Встановіть X11 від http://support.apple.com/kb/HT5293 (це стосується лише користувачів ОС X 10.8 "Гірський лев").

  2. Symlink заголовок і бібліотечні файли /opt/X11/include/X11до /usr/local/include/X11і від /opt/X11/libдо /usr/local/lib( як альтернативи ви можете симлінк до /usr/includeі /usr/lib):

    $ sudo ln -s /opt/X11/include/X11 /usr/local/include/X11
    $ for lib in $(ls /opt/X11/lib/lib*); do sudo ln -sf $lib /usr/local/lib; done
    

    Інакше ви отримаєте багато помилок щодо файлів, які не знайдені, або відсутніх символів. Я намагався передавати нестандартні каталоги X11 як варіант ./configureбезрезультатно.

  3. Завантажте з http://www.vergenet.net/~conrad/software/xsel/#download і, наприклад, витягніть його на робочий стіл.

  4. Вам потрібно gccплюс бібліотеки. Встановіть Xcode та встановіть інструменти командного рядка з Xcode> Налаштування> Завантаження> Компоненти.

  5. Змінити каталог, налаштувати та компілювати:

    $ cd xsel-1.2.0
    $ ./configure --prefix /usr/local
    $ make
    make  all-am
    if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -fno-strict-aliasing -Wall -Werror -g -std=gnu99 -Wdeclaration-after-statement -Wno-unused -MT xsel.o -MD -MP -MF ".deps/xsel.Tpo" -c -o xsel.o xsel.c; \
        then mv -f ".deps/xsel.Tpo" ".deps/xsel.Po"; else rm -f ".deps/xsel.Tpo"; exit 1; fi
    gcc  -g -O2 -fno-strict-aliasing -Wall -Werror -g -std=gnu99 -Wdeclaration-after-statement -Wno-unused   -o xsel  xsel.o  -lX11
    $ make install
    

Ви також можете встановити xselза допомогою MacPorts за допомогою команди sudo port install xsel. У моїй установці це також вимагало символьних посилань на бібліотеки X11 та файли заголовків, і для компіляції потрібно було набагато довше.

Я також хотів би поділитися застереженнями під час використання KeePass на Mac:

  1. KeePass 2.18 (від http://keepass2.openix.be ) має проблеми з чутливим до регістру HFS +. KeePass.exeвводиться Keepass.exe(помітьте малі літери 'p') у KeePass2.18.app/Contents/MacOS/startkeepass.sh(так що воно мовчки виходить з ладу). Мені довелося скористатися флеш-накопичувачем USB, відформатованим HFS +, нечутливим до регістру, і запустити звідти KeePass.

  2. У мене було багато проблем з тим, щоб KeePass 2.20.1 працював над ОС X 10.8 «Гірський лев». Не вдалося позбутися повідомлення про помилку:

    System.ArgumentException: Directory does not exists
    Parameter name: path
      at System.IO.FileSystemWatcher..ctor (System.String path, System.String filter) [0x00000] in <filename unknown>:0 
      at (wrapper remoting-invoke-with-check) System.IO.FileSystemWatcher:.ctor (string,string)
      at KeePass.Util.IpcBroadcast.FswStartServer () [0x00000] in <filename unknown>:0 
      at KeePass.Util.IpcBroadcast.StartServer () [0x00000] in <filename unknown>:0 
      at KeePass.Forms.MainForm.OnFormLoad (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0 
      at System.Windows.Forms.Form.OnLoad (System.EventArgs e) [0x00000] in <filename unknown>:0 
      at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00000] in <filename unknown>:0
    

    Нарешті я знайшов винуватця: примітки до випуску для версії 2.20.1 ( http://keepass.info/news/n121004_2.20.1.html ):

    Зміни від 2.20 до 2.20.1: У Unix-подібних системах KeePass тепер зберігає більшість тимчасових файлів у приватному тимчасовому каталозі (бажано в $XDG_RUNTIME_DIR).

    Відповідно до http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html :

    $XDG_RUNTIME_DIRвизначає базовий каталог відносно того, в якому слід зберігати специфічні для користувача неістотні файли виконання та інші файлові об'єкти (такі як сокети, названі труби, ...). Каталог ОБОВ'ЯЗКОВО належить користувачеві ...

    XDG_RUNTIME_DIRне було встановлено. Я встановив його в каталог, яким я володів, і KeePass працював як шарм:

    $ echo $XDG_RUNTIME_DIR
    $ mkdir ~/.mono
    $ export XDG_RUNTIME_DIR=~/.mono/; mono --desktop /Volumes/USB_Flash_Drive/KeePass-2.20.1/KeePass.exe
    

введіть тут опис зображення


Встановлення xsel: kudos для принаймні його пошуку. Але не знайдено встановленого pkg, і він не компілюється для мене. Потрібно додати gcc на мій шлях (принаймні). Тож рішення, яке працювало для мене, - це остання посилання .... але дозвольте мені зрозуміти частину тієї, що працювала: встановив 2,18 кг, скопіював на неї 2.20.1, потім кнопки (і ТІЛЬКИ кнопки, а не клавіші швидкого доступу ctrl-C ctrl-V) працюють. Кнопки ... це те, що я пропустив, коли прочитав це посилання (перш ніж задати це питання).
понеділок

Коментарі можна редагувати лише протягом 5 хвилин. Дуже дратує. У будь-якому разі: перед тим, як будь-який мак-поліцейський накид, ярлики (які не працюють), звичайно, є Command-C і Command-V. Глобальний автоматичний тип: я не пробував XDOTOOL. У мене немає ярликів, автоматичного введення, але в мене є КНОПКИ. Наразі досить добре. Кнопки! Чому я повинен розчаруватися? У мене безумовно є кнопки. Я маю на увазі, це кнопки! "(A la Tom Cruise in Rain Man: У мене кущі троянди. )
понеділок

@minnow: Я, нарешті, міг би протестувати xselз KeePass і здогадуватися ... ні, це не спрацювало, тому, як на даний момент, використання кнопок є єдиною можливістю в OS X копіювати імена користувачів та паролі. Я додав це до відповіді. Я помітив, що Softpedia посилається на xselвихідний код, тому я видалив цей біт зі своєї відповіді.
jaume

Мабуть, кнопки існують і працюють у 2,24 версії, яку я зараз використовую. Не зрозумів, що кнопки на панелі інструментів можуть робити це інакше, ніж контекстне меню. Дякуємо, що поділилися відповіддю!
Майк

1
Щось, ймовірно, змінилося з моменту опублікування цієї відповіді. У мене працює XQuartz, і при xselвстановленні через MacPorts ці кнопки справно працюють без будь-якого типу компіляції, зробленого власноруч. Було б непогано також працювати комбінації клавіш, а ще краще отримати автоматичний тип, але це, можливо, поки що мрія труби.
Dan Jones
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.