Git Product home page Git Product logo

tilde's Introduction

The Tilde Text Editor

Tilde is a text editor for the console/terminal, which provides an intuitive interface for people accustomed to GUI environments such as Gnome, KDE and Windows. For example, the short-cut to copy the current selection is Control-C, and to paste the previously copied text the short-cut Control-V can be used. As another example, the File menu can be accessed by pressing Meta-F.

Tilde screenshot

For more information, see the homepage

Installing Tilde

The easiest way to install Tilde is by using the repositories from the Tilde homepage download section. If there are no binary packages provided for your distribution or hardware, you can still build Tilde from the official releases provided there. Be aware that Tilde depends on several support libraries, which are also provided through the Tilde homepage.

Building from the official release is recommended over attempting to build from the git repositories for installing Tilde. Only for development of Tilde should the git repositories be used.

Getting help

There are several ways to get help, should you have problems using, installing or building Tilde:

  • For online support, try the #tilde IRC channel on freenode (webchat).
  • Alternatively, questions, discussions etc. can be posted on the mailing list tilde-text-editor <at> googlegroups.com.
  • For bug reports or feature suggestions, please file a bug in the github bugtracker.

Developing Tilde

To help developing Tilde, you will need to build Tilde from the git repositories. The repositories assume that all parts of Tilde, i.e. Tilde itself and its support libraries, are built from the git repositories. Please follow the steps below to build Tilde from the git repositories:

  1. Install the dependencies of Tilde from the system libraries. On a typical Debian/Ubuntu system this would include (packages for OpenSUSE and Fedora have similar names):
    • flex
    • gettext
    • libacl1-dev
    • libattr1-dev
    • libgpm-dev
    • libncurses5-dev
    • libpcre2-dev
    • libtool-bin
    • libunistring-dev
    • libxcb1-dev and/or libx11-dev
    • pkg-config
    • LLnextgen (available here)
    • clang (unless building using COMPILER=gcc)
  2. Clone the repositories:
for i in makesys transcript t3shared t3window t3widget t3key t3config t3highlight tilde ; do
    git clone https://github.com/gphalkes/$i.git
done
  1. Build all packages: ./t3shared/doall --skip-non-source --stop-on-error make -C src

Once the build is complete, tilde/src/.objects/edit is the newly compiled tilde. If the termdebug suite of tools is installed, then tilde/src/tedit can be used to run the editor while recording the input and output for debugging purposes.

Other ways to contribute

  • Answer questions on the IRC channel (see the Getting help section).
  • Creating and maintaining packages for different distributions.

tilde's People

Contributors

gphalkes avatar jscavallo avatar nevillepark avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tilde's Issues

Background colours not read correctly from config

Tilde is excellent – just what I've been looking for. One small problem: I configured it to use my own choice of background colours, and then found that most of these were reverting to black when I next ran Tilde.

This seems to be down to a small typo in attribute_string_to_bin(): if (strncmp(attr, "bg", 3) == 0) will always fail because it's missing a space after bg. The result is that Tilde fails to load any background colour other than the ten basic ones listed in attribute_map.

Can't paste text on SSH terminal

I just discovered Tilde and I think it's great for people who are used to windows key bindings and interface.

However what is quite upsetting is that I couldn't find a way to paste text over SSH: the usual middle click paste (on XTerm) seems to be "hijacked" by tilde, and only pastes from Tilde's internal clipboard instead.

I'm used to do that very often on the terminal or on other editors (Emacs, Vim, Nano), and it's an essential feature of any terminal application.

Are there any workarounds that I could use? Shouldn't there be an option to toggle that?

.recordings not found

At the current state of all the involved repos, when following the build recipe in the readme, the build ends with:

==== Executing make -C src for tilde ====
make: Entering directory '/home/pp/git/gphalkes/tilde/src'
[CXX] fileautocompleter.cc
[CXX] filebuffer.cc
[CXX] fileeditwindow.cc
[CXX] fileline.cc
[CXX] filestate.cc
[CXX] filewrapper.cc
[CXX] main.cc
[CXX] openfiles.cc
[CXX] option.cc
[CXX] util.cc
[CXX] dialogs/attributesdialog.cc
[CXX] dialogs/encodingdialog.cc
[CXX] dialogs/highlightdialog.cc
[CXX] dialogs/openrecentdialog.cc
[CXX] dialogs/selectbufferdialog.cc
[CXX] dialogs/optionsdialog.cc
[LD] .objects/edit
find: ‘.recordings/’: No such file or directory
find: ‘.recordings/’: No such file or directory
make: Leaving directory '/home/pp/git/gphalkes/tilde/src'

This might be harmless, because tilde/src/.objects/edit still seems to work correctly. Maybe the find in the Makefile should be made conditional upon the presence of .recordings.

Feature Request: command line options for tag

So it would be nice to be able to pass a line:column into tilde to have it automatically load the file and go to that spot.

tilde -l 25 test.txt
This would open test.txt and go to line 25 if the file was big enough otherwise just go to the end.

tilde -l 25:10 test.txt
This would open test.txt and go to line 25 and then column 10.
You could swap as well -l :, and col could just always default to 0 i guess, most of the time I don't need to offset the column as much as go to the line.

Alternatively adding a tag field to the command line args something like
-t

tilde -t TODO test.txt
It would open test.txt, set the search to TODO and go to the first instance of it, highlight it, and allow me to F3 to continue searching for TODO's

Using ctags myself, I have a wrapper script that pulls the tags and will load the correct file but going to the line/column and highlighting the keywords would be very helpful.

Thanks and some suggestions

Hello,

I'm using tilde now for about to weeks when needing to edit something in the shell (I had never heard of it before) and am very pleased about its existence. Thank you very much!

I think it definitely deserves to be included regularly in all Linux distributions. Until then - surely rather a matter of months than years - it is very nice to can use your package-repositories. Thank you also for these additional efforts that make the installation very convenient.

Though it is absolutely sufficient for my purposes there are some features that would be luxury to have:

  • more language modes (Ruby, Elixir, ..)
  • a fallback encoding (settable or just iso-8859-1?)
  • recognition of file types by Emacs and Vim mode-lines like #-*- mode: shell-script;-*- (also for setting the encoding?)
  • multiline regex replace

Best regards, T.

OBS: GPG key expired

Hi,

Looks like your GPG key in OBS repositories expired:

pub   1024D/796C9DDD 2011-07-25 [expired: 2015-12-12]

Thank you for Tilde, it's great!

Feature request: Markdown syntax highlighting

Markdown is a lightweight markup language that can easily be converted to HTML. Github, for example, uses Markdown. It would be nice to have this in tilde.

I've tried to make the highlight definitions myself, but I am very bad at it.

These regexes might be useful?

debian jessie arm / raspbian / armbian support (void linux anyone?)

I have recently started using tilde for my classes on raspberry pis, but came up with a pretty hacky script to create the packages for it here (I know that other people are also interested in running it on armbian).
https://github.com/ulno/ulnoiot/blob/master/bin/install_tilde_debian

Would there be an easier and better solution to creating or even providing these packages?

I am also working on creating packages for voidlinux, but I think I would be able to maintain these myself.

Build it?

I can't figure out how to build tilde. I guess there is also dependencies on some of your other github repo. Any pointers?

Shortcut for comments

It would be brilliant to have a shortcut (default ctrl+e ?) to comment or uncomment a line (or a bunch of selected lines).

Cursor position response ends up in the text?

What OS are you using (including version): Win10
What terminal were you running Tilde on when you ran into the issue:
xterm-256color, or linux (on WSL/Ubuntu Xenial)

Please paste the result of running 'tilde --version':

Tilde version 0.4.0
Copyright (c) 2011-2018 G.P. Halkes
Tilde is licensed under the GNU General Public License version 3
Library versions:
  libt3config 0.2.11
  libt3highlight 0.4.5
  libt3key (through libt3widget) 0.2.8
  libt3widget 0.6.2
  libt3window 0.3.0
  libtranscript 0.3.3
  libunistring 0.9.?

Please describe the problem. If possible, include the action you performed, the expected result and the actual result in the description.

git commit opens tilde with [2;3R (sometimes doubled) at the beginning of the edited text (the commit message).

Segmentation fault when indenting/unindenting from menu

Screenshot_20190421_212233

Tilde crashes when the menu options are used but no text is selected (the Tab / Shift+Tab key combinations work as expected).

Backtrace:

Thread 1 "tilde" received signal SIGSEGV, Segmentation fault.
0x00007f5ac37aef40 in t3widget::text_line_t::size() const () from /usr/lib/libt3widget.so.2
(gdb) bt
#0  0x00007f5ac37aef40 in t3widget::text_line_t::size() const () from /usr/lib/libt3widget.so.2
#1  0x00007f5ac379f672 in t3widget::edit_window_t::ensure_cursor_on_screen() () from /usr/lib/libt3widget.so.2
#2  0x00007f5ac37a0c87 in t3widget::edit_window_t::indent_selection() () from /usr/lib/libt3widget.so.2
#3  0x00005634a01c2cea in ?? ()
#4  0x00005634a01c90a9 in ?? ()
#5  0x00005634a01cc90a in ?? ()
#6  0x00007f5ac37b7e39 in std::_Function_handler<void (int), t3widget::signal_t<int>::get_trigger() const::{lambda(int)#1}>::_M_invoke(std::_Any_data const&, int&&) () from /usr/lib/libt3widget.so.2
#7  0x00007f5ac3778d19 in t3widget::menu_panel_t::activate(int) () from /usr/lib/libt3widget.so.2
#8  0x00007f5ac376d0cb in t3widget::menu_item_t::process_mouse_event_from_menu(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#9  0x00007f5ac3777df0 in t3widget::menu_panel_t::process_mouse_event(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#10 0x00007f5ac37b7015 in t3widget::menu_bar_t::process_mouse_event(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#11 0x00007f5ac378cacb in t3widget::mouse_target_t::handle_mouse_event(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#12 0x00007f5ac375ddc1 in t3widget::iterate() () from /usr/lib/libt3widget.so.2
#13 0x00007f5ac375deae in t3widget::main_loop() () from /usr/lib/libt3widget.so.2
#14 0x00005634a01c5162 in ?? ()
#15 0x00007f5ac336a223 in __libc_start_main () from /usr/lib/libc.so.6
#16 0x00005634a019d96e in ?? ()

These two menu entries probably should just do the same as the key bindings, instead of being limited to selected text (Shift+Tab, for instance, can't be recognized in the linux console, so the menu entry could be used instead).

Cheers.

Building from Release archive

Using Ubuntu MATE 18.04.1
When I want to have a more recent version than the Ubuntu repo (0.4), how do I build the release? I know how to build from current git; is building from the release archive the same?? The instructions are specifically about git, but I thought I'd try the release.

F8 and S-F8 short cut is not working

It looks F8 and S-F8 short cut is not working.
Ubuntu Server 16 with latest updates.
I have installation on Virtual Box (Host Key is F12).
Generally in other programs and in Ubuntu is every thing working ok.

Right click ...

Hi,
Right click is eaten by the editor, which is kind of expected - but it means I can't right click and use my terminal emulators menu.

It would be good if either right click could be passed through, alternately tilde could have a popup menu, e.g. -

Cut
Copy
[Paste]
Paste To New File

Feature request: system-wide default configuration

I'd like to have a system-wide default configuration for tilde, which gets loaded if no user-configuration file exists yet (e.g. for color scheme and tab size). I tried putting these configuration options in /user/share/tilde/base.config, but unfortunately they are not picked up because they are not allowed in base_config.schema.

Why not allow all user configuration fields in the base.config as well? Both files (base.config and ~/.config/tilde/config) could use the same schema in my opinion.

Tilde freezes on terminal clipboard insert

Tilde 0.4.0 running on Centos 7 in an ssh session in xterm freezes when I paste text with Shift+insert or Shift+MiddleClick. The pasted text appears but tilde freezes immediately and uses the CPU on 100%. X11 forwarding is disabled. The problem was introduced with the release 0.4.0.

A few mouse issues in TTY

Hi gphalkes, excuse me again for bothering during the holidays but I insist there is no need at all to rush. Anyway, I experienced a few non-critical issues related to the mouse while using tilde in the TTY and I thought it best to gather them in a single issue report. Here they are:

(I also recorded them here:
https://drive.google.com/open?id=1zjHKYmcgR36voWHIo7LK0w7qxOydwRk2)

  • Suspended tilde keeps grabbing mouse. To reproduce, first make sure you can select text in bare TTY with the mouse. Then run tilde and suspend it, and try again to select text. This time you can't, because tilde is still grabbing the mouse input. If you then run another application with mouse support, it will work fine: it's only the console that's affected. Depending on what you do, you'll be able to see tilde performing all the mouse actions at once when resuming its execution.

  • Mouse pointer freezes or disappears when holding left click and moving around. There seem to be three different situations:

  1. When selecting text in a document, only the 'selection cursor at end/start' is shown, which is fine.
  2. When attempting to select text in an empty area of a document (e.g. a new document), the pointer doesn't seem to be moving even though it actually is. (This also happens if you suspend tilde and attempt to select text from the console display).
  3. When browsing the menus by holding the left mouse button pressed, the pointer becomes invisible and the only indicator of the mouse position is the highlighting of the menu entries.
  • In the 3rd case from the previous point, one would think moving the mouse to the top left corner and then moving to the sides would result in the menu tabs being highlighted. However, they don't, since the mouse seems to have one row of space above the screen.

If you ask me, the only one which may be annoying is the pointer disappearing when browsing the menus. The other ones can barely be noticed.

Thank you very much!

Feature request: remember position

It would be nice if tilde could remember the last position (line and column) editing a file. So If you re-open a file, you are back at the line you were editing before (this of course should be overwritten by specifying a edit position at the command line).

"Open Recent" file list is not preserved between two tilde sessions

I am running tilde 1.0.1 on a Ubuntu 16.04 machine, which I am accessing via SSH using KiTTY from Windows.

When I open and close a file in tilde, I can re-open it easily using "Open Recent" from the "File" menu. When I restart tilde, the file list there is empty. Is this intended or a bug?

I would love to have the recent file list saved, so that I can return to my last file after restarting tilde.

Could not save file: Permission denied

Files with write permission in a directory without write permission can not be saved.

Example:

mkdir test
touch test/test.txt
chmod 500 test
tilde test/test.txt #You can not save the modifications!
vi test/test.txt #Can save
mcedit test/test.txt #Can save

Add a short-cut for turning on and off auto-indent

There are cases when auto-indent is not desirable. For example when using the terminal's paste facility (shift-middle-click, or terminals which do not pass the mouse buttons to Tilde). When working with such a terminal it would be useful to be able to briefly turn of auto-indent for pasting. Having to go through a multi-layer menu structure to change this is tedious and impractical.

Bug "go to matching brace" not working correctly

I was editing a perl file and had a function I was editing and tried to go to the end of the function by the matching brace... this did not work.

1.sub parseFileLines
2.{
3. my (@lines) = @{$_[0]};
4. $test = 0;
5.}

if i did goto matching brace on line 2, it would go to the end of line 3 instead of line 5

(Suggestion) Mouse scrolling in tty

Hi, I don't know it this would be very hard to implement, but I think it would be very nice to have support for mouse scrolling in tty (linux) console (through gpm, I guess).

I also take the opportunity to thank you for this awesome, great application. Thanks.

Arrow keys & page up / down will not allow you to navigate around the document

Tilde 0.4.0 on Linux mint Mate edition 19.1 Tilde works perfectly.
However running :-
Tilde 1.0.0 on Raspberry Pi 4 running Raspbian (Debian 10 Buster), installed using Noobs 3.1.1, with the default terminal LXTerminal 0.3.2

You can navigate around the document using a mouse, but the arrow keys, & page up / down do not move the cursor.

pi@raspberrypi:~ $ tilde --version
Tilde version 1.0.0
Copyright (c) 2011-2018 G.P. Halkes
Tilde is licensed under the GNU General Public License version 3
Library versions:
libt3config 0.2.11
libt3highlight 0.4.6
libt3key (through libt3widget) 0.2.9
libt3widget 1.0.3
libt3window 0.3.2
libtranscript 0.3.3
libunistring 9.10.?

Add Goto Top and Goto End on ^Home and ^End keys

It would just be more like Notepad, Notepad++, Midnight Commander and Norton Commander if those keystrokes worked.

I was able to get it working with a few lines of code by calling the existing routine with 1 for top and 9999999 for end, based on the assumption nobody would be editing a file larger than 10 million lines.

I would be happy to share the code.

Can't edit files with Font Awesome characters

When reporting a bug, please provide the information requested below to aid in the diagnosis of the problem. For feature requests you can remove the template text.

What OS are you using (including version): Ubuntu 18.04 with i3
What terminal were you running Tilde on when you ran into the issue: xfce4-terminal version 0.8.7.4

Please paste the result of running 'tilde --version':
Tilde version 0.4.0
Copyright (c) 2011-2018 G.P. Halkes
Tilde is licensed under the GNU General Public License version 3
Library versions:
libt3config 0.2.11
libt3highlight 0.4.5
libt3key (through libt3widget) 0.2.8
libt3widget 0.6.2
libt3window 0.3.0
libtranscript 0.3.3
libunistring 9.9.?

Please describe the problem. If possible, include the action you performed, the expected result and the actual result in the description.
Opening the attached file results in a dialog that says "Conversion from encoding UTF-8 is irreversible Continue Abort"
Choosing either results in a text file that is not the original.
Tried various options with the "-e" parameter.
test.txt

Random crash when closing window

EDIT: Link to video reproducing the issue:
https://drive.google.com/open?id=14Vq1wOGhvJBw4AL6ESq1RDDuQUC8IuGz

screenshot

It's not too easy to reproduce, but I can experience this when messing with windows.

I have the backtrace of the crash, with debug symbols:

#0  0x00007fa316de8c72 in std::_Deque_iterator<std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >, std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >&, std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >*>::_Deque_iterator(std::_Deque_iterator<std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >, std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >&, std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >*> const&) () from /usr/lib/libt3widget.so.2
#1  0x00007fa316de88c3 in std::deque<std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >, std::allocator<std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> > > >::begin() () from /usr/lib/libt3widget.so.2
#2  0x00007fa316de92e2 in std::deque<std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >, std::allocator<std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> > > >::clear() () from /usr/lib/libt3widget.so.2
#3  0x00007fa316de72e0 in t3widget::split_t::unsplit(std::unique_ptr<t3widget::widget_t, std::default_delete<t3widget::widget_t> >*) () from /usr/lib/libt3widget.so.2
#4  0x00007fa316de7466 in t3widget::split_t::unsplit() () from /usr/lib/libt3widget.so.2
#5  0x000055b4ee054f85 in ?? ()
#6  0x000055b4ee05b0a9 in ?? ()
#7  0x000055b4ee05e90a in ?? ()
#8  0x00007fa316e2b4f0 in std::function<void (int)>::operator()(int) const () from /usr/lib/libt3widget.so.2
#9  0x00007fa316e2b059 in t3widget::internal::func_ptr_t<int>::call(int) const () from /usr/lib/libt3widget.so.2
#10 0x00007fa316e2a921 in t3widget::signal_t<int>::operator()(int) const () from /usr/lib/libt3widget.so.2
#11 0x00007fa316e9c6cf in t3widget::signal_t<int>::get_trigger() const::{lambda(int)#1}::operator()(int) const () from /usr/lib/libt3widget.so.2
#12 0x00007fa316e9d51e in std::_Function_handler<void (int), t3widget::signal_t<int>::get_trigger() const::{lambda(int)#1}>::_M_invoke(std::_Any_data const&, int&&) ()
   from /usr/lib/libt3widget.so.2
#13 0x00007fa316e2b4f0 in std::function<void (int)>::operator()(int) const () from /usr/lib/libt3widget.so.2
#14 0x00007fa316e2b059 in t3widget::internal::func_ptr_t<int>::call(int) const () from /usr/lib/libt3widget.so.2
#15 0x00007fa316e2a921 in t3widget::signal_t<int>::operator()(int) const () from /usr/lib/libt3widget.so.2
#16 0x00007fa316e29f54 in t3widget::menu_panel_t::activate(int) () from /usr/lib/libt3widget.so.2
#17 0x00007fa316e15d3c in t3widget::menu_item_t::process_mouse_event_from_menu(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#18 0x00007fa316e28f82 in t3widget::menu_panel_t::process_mouse_event(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#19 0x00007fa316e9bdfc in t3widget::menu_bar_t::process_mouse_event(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#20 0x00007fa316e4ee27 in t3widget::mouse_target_t::handle_mouse_event(t3widget::mouse_event_t) () from /usr/lib/libt3widget.so.2
#21 0x00007fa316df2799 in t3widget::iterate() () from /usr/lib/libt3widget.so.2
#22 0x00007fa316df284e in t3widget::main_loop() () from /usr/lib/libt3widget.so.2
#23 0x000055b4ee057162 in ?? ()
#24 0x00007fa316924223 in __libc_start_main () from /usr/lib/libc.so.6
#25 0x000055b4ee02f96e in ?? ()

I am on Arch Linux, using the package from AUR, with a tweaked PKGBUILD to generate a debug build (CXXFLAGS="-O0 -g -gstabs+"). I guess it would also help If I knew how to include the source so that it is visible to gdb.

I was running tilde on a TTY. I haven't tried in other terminals, but I will do soon. (EDIT: can reproduce in xterm). The full output of tilde --version is:

Tilde version 1.0.0
Copyright (c) 2011-2018 G.P. Halkes
Tilde is licensed under the GNU General Public License version 3
Library versions:
  libt3config 0.2.11
  libt3highlight 0.4.5
  libt3key (through libt3widget) 0.2.9
  libt3widget 1.0.2
  libt3window 0.3.2
  libtranscript 0.3.3
  libunistring 9.10.?

Cheers!

Can't search for non-ASCII characters

If I search for an everyday Unicode character such as (RIGHT SINGLE QUOTATION MARK) or é (LATIN SMALL LETTER E WITH ACUTE), Tilde fails to find it.

Furthermore, Tilde also fails to find an ASCII character located immediately before a Unicode character, such as the first hyphen in nim-é-nom (it finds only the second one).

Can't install on Ubuntu 16.04

When executing install_repo.sh I receive:

W: GPG error: http://download.opensuse.org/repositories/home:/gphalkes:/tilde/xUbuntu_16.04 ./ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY FFC70E7D796C9DDD
E: The repository 'http://download.opensuse.org/repositories/home:/gphalkes:/tilde/xUbuntu_16.04 ./ Release' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

A PPA would be preferable.

Version unhelpful

When I build tilde and then run tilde -V the output is:

Tilde version <VERSION>
Copyright (c) 2011-2017 G.P. Halkes
Tilde is licensed under the GNU General Public License version 3
Library versions:
  libt3config 0.0.0
  libt3highlight 0.0.0
  libt3key (through libt3widget) 0.0.0
  libt3widget 0.0.0
  libt3window 0.0.0
  libtranscript 0.0.0
  libunistring 0.9.?

Is that just how it is for a non-release version, or is it possible to have a somewhat more helpful output?

Compiling on raspberry pi, t3shared works, but produces unusable binary

I am trying to build tilde for the raspberry pi.
I installed libtranscript and LLnextgen manually successfully and can now run the whole t3shared make process.
However, there is not install option in t3shared and the only possible binary I can find is in tilde/src/.objects: edit

Running this just shows: Debug mode: setting VM limit

Is there anywhere some more information how the actual package build process works (I will probably now try to understand the Arch AUR pkgbuild process and try to apply it for raspbian)?

"Shift-ins" Copy and paste inserts extra whitespace, needs "bracketed paste"

When copying and pasting into the editor, if you use the built-in Ctrl-C and Ctrl-V, everything works OK. But if you use the terminal's based Shift-Ctrl-V or Shift-Ins command, which usually lets you paste anything into the terminal, you get a bunch of extra whitespace. For instance: copy and paste the following into tilde

def foo():
  print("foo")
  print("bar")
  print("foobar")

If you do that with Ctrl-V, you get the right thing, but if you do it with Shift-Ins or Ctrl-Shift-V, you get

def foo():
  print("foo")
    print("bar")
      print("foobar")

This is because the terminal simply replays the text you typed as though you typed it, so it auto-indents and then double-indents everything.

Emacs has this working with their "bracketed paste mode:" https://debbugs.gnu.org/cgi/bugreport.cgi?bug=19093
Also works with micro as well, so this is possible to do.

I'm using KDE Neon (based on Ubuntu Xenial), running tilde on bash. Here is my version:

Tilde version 0.4.2
Copyright (c) 2011-2018 G.P. Halkes
Tilde is licensed under the GNU General Public License version 3
Library versions:
  libt3config 0.2.11
  libt3highlight 0.4.5
  libt3key (through libt3widget) 0.2.9
  libt3widget 0.6.3
  libt3window 0.3.0
  libtranscript 0.3.3
  libunistring 0.9.?

Themes ?

Hi,
Thanks for tilde. It would be great if there was some way to load / save colours, that way it would be easy to distribute themes.

Cheers
S

clipboard re-direction

Using xclip for remote access is not always an option (for example with windows clients) - actually not sure if it works from a Mac.

Would it be possible to do an optional redirect of the clipboard to a socket or also listen on a socket (could also be in the file system) for clipboard contents?

Maybe easier (and more important for my personal usecase):
Especially the direction out of tilde would be interesting (I press ctrl-c or ctrl-x in tilde after selecting something) -> the selection here is sent to a socket or to an external program/script via stdin of that program.

(Feature request) Show time on menu bar

Hello,

I have been using tilde in fullscreen mode (e.g. tty) a lot and I would see it very convenient, if it is not too much trouble, to add a time display to the menu bar, even if it's just optional.

It could be something like this (screenshot of setedit):
screenshot_20180511_154111

Thanks.

Online chat support channel for tilde

Does or should tilde have an online chat-room? I am happy to create a matrix or IRC channel for it (and hang out there to give the little of support I can give).

MacOS support?

This project sounds neat, unfortunately there are no builds for MacOS & one day hope that this project can be supported through MacPorts or Homebrew. So, having a quick go myself to build:

./t3shared/doall --skip-non-source --stop-on-error make -C src

I get some compile errors, blocking any attempt at running it on my local machine :(
Any there any plans for this on MacOS (or maybe a BSD release might work?)?

The compile errors I get are:

==== Executing make -C src for transcript ====
cp pregen/generic_fallbacks.c generic_fallbacks.c
cp pregen/generic_fallbacks.h generic_fallbacks.h
[CCLT] transcript.c
error: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: unknown option character `-' in: --silent
Usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool -static [-] file [...] [-filelist listfile[,dirname]] [-arch_only arch] [-sacLT] [-no_warning_for_no_symbols]
Usage: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool -dynamic [-] file [...] [-filelist listfile[,dirname]] [-arch_only arch] [-o output] [-install_name name] [-compatibility_version #] [-current_version #] [-seg1addr 0x#] [-segs_read_only_addr 0x#] [-segs_read_write_addr 0x#] [-seg_addr_table <filename>] [-seg_addr_table_filename <file_system_path>] [-all_load] [-noall_load]
make: *** [.objects/transcript.lo] Error 1

Expired GPG key?

I think the GPG key in OBS repositories expired:

pub   rsa2048 2017-04-16 [SC] [expired: 2019-06-25]
      78F9 1C8F 27BC 3952 84BC  9C61 20BE ECE5 E0B2 0CEA
uid           [ expired] home:gphalkes OBS Project <home:[email protected]>

Can you renew it please?

Tilde changes file ownership on save

The file's owner can get changed, if the user editing the file is not the same as the owner (and not root). The mechanism which Tilde uses to save files needs to be changed, such that it will always simply write to the existing file.

Two considerations:

  • Tilde should make sure it doesn't cause inadvertent corruption, by at least saving some sort of backup file if possible
  • Tilde should first check whether it can save the file, before starting the write. This includes character-set conversion and extra size allocation.

Some extra keys for TUI navigation

Here are some keyboard interactions that would be handy to add, that I found using tilde 0.4.0

Key(s) Action
ESC Close any dialogue
Left / - Close dislosure triangle
Right / + Open /expand disclosure triangle

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.