2014-02-27 8 views
5

Ich benutze sowohl qt Schöpfer und Vim für C++ Programmierung manchmal. Wenn eine Datei in vim geändert wird und der Fokus wieder auf dem qt-Ersteller liegt, fordert er mich auf, die von vim vorgenommene Änderung zu akzeptieren oder abzulehnen, wähle ich die ganze Zeit Ja.Wie schließe ich automatisch ein Dialogfenster in Linux?

Es gibt keine Option, soweit ich weiß, in qt Schöpfer, ohne den Benutzer zu akzeptieren, so habe ich ein Bash-Skript, um dieses Problem zu beheben:

#!/bin/bash 

while true 
do 
    myw=$(xdotool getactivewindow) 
    mywinprop=$(xprop -id ${myw}) 
    if [[ \ 
     $(echo "$mywinprop" | egrep 'NET_WM_NAME.*File Changed') && \ 
     $(echo "$mywinprop" | egrep 'WM_CLASS.*qtcreator') \ 
     ]] 
    then 
     xvkbd -xsendevent -text "\r" >/dev/null 2>&1 
    else 
     sleep 0.5 
    fi 
done 

Es funktioniert ok, die Aufforderung Dialog erscheint und verschwindet dann schnell, aber es ist immer noch nervig. Ich frage mich, ob es einen besseren Weg gibt, dies zu tun. (Ich habe bereits eine Feature-Anfrage eingereicht, bin mir aber nicht sicher, ob sie das implementieren wird.)

Die Lösung ist möglicherweise in vielen ähnlichen Situationen anwendbar.

+0

Ich mag Ihre Lösung;) Aber: Sie sollten nicht die gleiche Datei mit zwei verschiedenen Editoren zur gleichen Zeit bearbeiten. – Flopp

Antwort

0

Erstens, es sollte nicht angenommen werden, dass ich Partei ergreife. Versuchen Sie nun, den nano-Texteditor in Linux zu verwenden. Sie können Ihren Code direkt vom Terminal aus bearbeiten und Änderungen auf die Festplatte mit einem einfachen Strg + o-Befehl schreiben oder mit ctrl + x.Its, das in Linux integriert ist. Hier ist der Link. nano-editor.org

Verwandte Themen