start:development:ides_and_editors

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

start:development:ides_and_editors [2020/04/16 19:29] (current)
jrutte02 created
Line 1: Line 1:
 +====== Editors and IDEs ======
  
 +===== Editors =====
 +
 +
 +On our clusters we support a number of editors. If you think your favorite one is missing, [[https://​hpc.uni-mainz.de/​high-performance-computing/​service-angebot/​softwareinstallation/​|please let us know]].
 +
 +The following list is not exhaustive nor complete.
 +
 +
 +
 +==== atom ====
 +
 +[[https://​atom.io/​|''​atom''​]] is a widely used IDE, favored by many developers, which supports all the widespread programming languages and provides a plug-in scheme for most purposes.
 +
 +''​atom''​ can be installed on various platforms. Please refer to the [[https://​flight-manual.atom.io/​getting-started/​sections/​installing-atom/​|installation guide]] (see the top tap for platforms other than Linux). ​
 +
 +=== Running Locally and Editing Remote Files ===
 +
 +If you would like to develop on our HPC-Systems,​ you can edit the source code files stored there. We recommend using the ''​ftp-remote-edit''​ package. Select: ''​Edit''​ -> ''​Preferences''​ -> ''​Install''​ to select this package.
 +
 +After installing ''​ftp-remote-edit''​ you can select it in the ''​Packages''​ drop-down menue and select ''​Toggle''​. You will be asked for a password, which is actually a passphrase you may choose at will. 
 +<callout type="​info"​ icon="​true">​
 +You will need to enter this password //only once per session//, much like for ordinary [[:​start:​mogon_cluster:​access|ssh-connections]].
 +</​callout>​
 +
 +
 +== Working within the University Network ==
 +
 +After the installation of ''​ftp-remote-edit''​ has been successfully completed, the following settings have to be made in order to work within the University Network.
 +Select: ''​Packages''​ -> ''​Ftp-remote-edit''​ -> ''​Toggle''​ and enter your password. On the left side of the editor the remote pane has now opened. Right click on the pane and select ''​Edit Servers''​. Enter the settings for the desired cluster according the following template:
 +
 +^ MOGON I ^ MOGON II ^ 
 +| {{ :​development:​atom_ftp_remote_edit_mi.png?​400 | example setting for MOGON I }}  | {{ :​development:​atom_ftp_remote_edit_mii.png?​400 | example setting for MOGON II}}  |
 +
 +
 +== Working Remotely outside the University Network ==
 +
 +Thereafter, selecting ''​Toggle''​ will give you the remote pane with a ''​Edit Servers''​ button. Select it and enter settings according to this template:
 +
 +{{:​development:​atom.png?​400 | example setting for the MOGON I fileserver}}
 +
 +Please note:
 +  * Select the hostname for direct connect to the file server. This can be either ''​mogonfs.zdv.uni-mainz.de''​ for MOGON I or ''​mogon2ftp.zdv.uni-mainz.de''​. If you develop in your home directory, this choice does not matter. See the [[:​start:​fs_dm:​filesystems:​transfer|filesystem page]] for further details.
 +  * Choose the plain FTP protocol, but require an encrypted handshake with ''​Require explicit FTP over TLS''​.
 +  * As the logon type should be ''​Username / Password'',​ supply them in the according fields.
 +  * Finally supply a full qualified path, e.g. ''/​gpfs/​fs1/​home/<​username>/​...''​ or ''/​lustre/​miifs01/​project/<​projectname>''​. See the [[:​start:​fs_dm:​filesystems:​transfer|filesystem page]] for further options.
 +
 +
 +
 +==== gedit ====
 +
 +[[https://​wiki.gnome.org/​Apps/​Gedit|gedit]] is a nice and simple to use editor with syntax highlighting for a number of languages. Due to its simplicity it is the favorite tool for some of our courses.
 +
 +=== Turning off Gtk Warnings ===
 +
 +gedit issues a number of (annoying and meaningless) Gtk warnings. They can be turned off by placing this snippet in your ''​.bashrc''​.
 +
 +<code bash>
 +suppress-gnome-warnings() {
 +    # $1 is the name which should appear on history but is otherwise unused.
 +    historyName=$1
 +    shift
 +
 +    if [ -n "​$*"​ ]; then
 + # write the real command to history without the prefix
 + history -s "​$historyName ${@:​2}"​
 +
 + # catch the command output
 + errorMsg=$( $* 2>&1 )
 +
 + # check if the command output contains not a (one of two) GTK-Warnings
 + if ! $(echo $errorMsg | grep -q '​Gtk-WARNING\|connect to accessibility bus'); then
 +     echo $errorMsg
 +        fi
 +    fi
 +}
 +
 +gedit() {
 +   ​suppress-gnome-warnings $FUNCNAME $(which $FUNCNAME) $@
 +}
 +
 +</​code>​
 +
 +==== emacs ====
 +
 +''​emacs''​ is provided on every login node.
 +
 +
 +
 +==== nano ====
 +
 +''​nano''​ is provided on every login node.
 +
 +
 +==== vi / vim ====
 +
 +''​vi''​ (as ''​vim''​) is provided on every login node. 
 +
 +===== IDEs =====
 +
 +==== Geany ====
 + 
 +[[https://​www.geany.org/​|''​geany''​]] is provided a system package. You can simply use it on any login node.
  • start/development/ides_and_editors.txt
  • Last modified: 2020/04/16 19:29
  • by jrutte02