La documentazione di KeePass in http://keepass.info/help/v2/setup.html#mono , sebbene non menzioni specificamente OS X, descrive il tuo problema:
Appunti:
su alcuni sistemi, le routine degli appunti di Mono non funzionano correttamente. In questo caso, installa il pacchetto xsel. Se xselinstallato, KeePass ≥ 2.20 utilizza questa utility per le operazioni negli Appunti.
Quindi xseldovrebbe aiutare. ( xselè disponibile da MacPorts ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ). La fonte è disponibile qui: http://www.vergenet.net/~conrad/ software / xsel / # download )
EDIT : Ma non lo fa. Ero curioso, quindi ho compilato xselsul mio Mac. Non ha risolto il problema con copia / incolla (testato con Portable KeePass 2.20.1), come temevo, devo dire. Perché? Perché come indicato qui http://www.kfish.org/software/xsel/ xsel è uno strumento che manipola il contenuto degli appunti delle applicazioni X11 . X11 fornisce l'interfaccia utente grafica per Linux e UNIX, ma OS X usa invece Quartz , e anche Mono, come ho realizzato (vedi http://www.mono-project.com/WinForms#About_System.Windows.Forms ).
C'è una soluzione alternativa per copiare nome utente e password negli Appunti, come spiegato in questa discussione http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 :
Ureka (sic) . Il tuo 2.19 è sulla strada per copiare incolla lavorando sul MAC via Mono! Il tuo pulsante per copiare il nome utente e il tuo pulsante per copiare la password ora funzionano !!!
Il poster sopra si riferisce a questi pulsanti (KeePass 2.20.1 portatile mostrato in esecuzione su Windows (mi dispiace, nessun Mac nelle vicinanze)):
Per copiare il nome utente:

Per copiare la password:

MODIFICA :
Vorrei condividere come ho compilato xselnel caso qualcuno ne avesse bisogno su OS X:
Installa X11 da http://support.apple.com/kb/HT5293 (questo vale solo per gli utenti di "Mountain Lion" di OS X 10.8).
Intestazione Symlink e file di libreria da /opt/X11/include/X11a /usr/local/include/X11e da /opt/X11/liba /usr/local/lib(in alternativa si può link simbolico a /usr/includee /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
Altrimenti otterrai molti errori su file non trovati o simboli mancanti. Ho provato a passare le directory X11 non standard come opzione a ./configuresenza successo.
Scarica da http://www.vergenet.net/~conrad/software/xsel/#download ed estrai, ad esempio, sul tuo desktop.
Hai bisogno di gccpiù librerie. Installa Xcode e quindi installa gli strumenti della riga di comando da Xcode> Preferenze> Download> Componenti.
Cambia directory, configura e compila:
$ 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
Puoi anche installare xselcon MacPorts usando il comando sudo port install xsel. Nella mia installazione ha richiesto anche i collegamenti simbolici per le librerie X11 e i file di intestazione e ci è voluto molto più tempo per la compilazione.
Vorrei anche condividere alcuni avvertimenti quando si utilizza KeePass su un Mac:
KeePass 2.18 (da http://keepass2.openix.be ) ha problemi con HFS + sensibile al maiuscolo / minuscolo. KeePass.exeviene digitato Keepass.exe(nota 'p' minuscola) in KeePass2.18.app/Contents/MacOS/startkeepass.sh(in modo che fallisca silenziosamente). Ho dovuto usare un'unità flash USB formattata con HFS + senza distinzione tra maiuscole e minuscole ed eseguire KeePass da lì.
Ho avuto molti problemi a far funzionare KeePass 2.20.1 su OS X 10.8 "Mountain Lion". Non è stato possibile eliminare il messaggio di errore:
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
Alla fine ho trovato il colpevole: le note di rilascio per la versione 2.20.1 dichiarano ( http://keepass.info/news/n121004_2.20.1.html ):
Cambia da 2.20 a 2.20.1: Su sistemi simili a Unix, KeePass ora memorizza la maggior parte dei suoi file temporanei in una directory temporanea privata (preferibilmente in $XDG_RUNTIME_DIR).
Secondo http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html :
$XDG_RUNTIME_DIRdefinisce la directory di base in relazione alla quale devono essere memorizzati i file di runtime non essenziali specifici dell'utente e altri oggetti file (come socket, named pipe, ...). La directory DEVE essere di proprietà dell'utente ...
XDG_RUNTIME_DIRnon è stato impostato. L'ho impostato su una directory di mia proprietà e KeePass ha funzionato come un incantesimo:
$ echo $XDG_RUNTIME_DIR
$ mkdir ~/.mono
$ export XDG_RUNTIME_DIR=~/.mono/; mono --desktop /Volumes/USB_Flash_Drive/KeePass-2.20.1/KeePass.exe
