SSH connection (.lns)

An SSH connection is a .lns file in the workspace — versionable and portable, like the .lnc. Create one via New → New SSH connection: the tab opens an integrated SSH terminal (through Windows' ssh.exe) and a remote files mini-bar (SFTP).

The file browser shows one folder at a time (MobaXterm/WinSCP style): the first row is always .. to go up one level, and double-clicking a folder enters it — a symbolic link to a folder (the current of a deploy) too. The path bar at the top lets you type a remote path and press Enter to jump there; in the list, Backspace or Alt+↑ go up one level and Alt+← goes back to the previous folder. The star keeps the connection's favorite folders, inside the .lns itself. Follow the terminal makes the shown folder follow the SSH session's cd: when turned on, LightNote types a line into the terminal that teaches the shell (bash or zsh) to report the folder at every prompt — leave the terminal at the prompt before clicking. In the right-click menu, Open in terminal goes the other way (takes the terminal to the folder) and Show the terminal's folder brings the terminal's current folder once. The menu also offers Open in editor (downloads the file, opens it in a tab and re-uploads on save), Download, Upload, New folder, Rename, Delete and Permissions (chmod). You can also drag files from Explorer onto the panel to upload them to the current folder.

Sorting and filtering. Click a column header (Name, Size or Modified) to sort and click it again to reverse; .. and folders always stay on top, and the chosen order is remembered. The filter field below the path accepts shell-style masks: * (any text), ? (one character), [abc] or [a-z] (one of the set) and [!x] (not in the set) — for example *BRR* or *.log. Separate several with ; and write what to exclude after | (*.log; *.gz | *debug*). Text without wildcards matches anywhere in the name, and upper and lower case are not distinguished. The filter applies to files only — folders stay visible so you can keep navigating —, it keeps applying when you change folders, and the line below it tells how many files are shown. When the panel is narrow, the Modified and then the Size columns leave the list, and both show up in the name's tooltip.

Transfers. The panel keeps one SFTP connection open while the tab lives, so changing folders does not reconnect on every click; Disconnect closes that connection too. Select several files with Ctrl or Shift to download or delete them at once. During an operation, the panel's footer shows the progress and the Stop button — a file stopped halfway is deleted, so no copy is left that looks complete. Before replacing a file that already exists (on the server when uploading; on your computer when downloading), LightNote asks; and opening a file larger than 50 MB in the editor asks for confirmation and offers to download it instead.

Folders go whole. Download on a folder walks the tree and brings everything to the chosen destination; Upload folder (on the arrow of the Upload button, in the menu, or by dragging a folder from Explorer) creates the tree on the server, and if files already exist there a single question covers the whole batch (replace all, skip existing or stop). Delete on a folder first counts what is inside and says how many files and folders will go — the server has no Recycle Bin. Symbolic links to folders are not followed: when downloading they are left out, and this is said; when deleting, the link goes, never its target.

In the list, Ctrl+F5 refreshes, Ctrl+A selects everything and Ctrl+C copies the remote path of the selection (there is no local file to copy). The width you give the Size and Modified columns is remembered.

The password can be encrypted inside the .lns with the workspace's Passphrase or asked on every connection. SSH keys from the Windows agent/profile work normally, since the connection uses the system's OpenSSH client.

The Connect on open option (in the connection dialog) starts the SSH session automatically when you open the .lns. If the password is not stored, the terminal itself asks for it on connect.