Source code editor written in Go using go-gtk bindings. It aims to handle navigation effectively among large number of files.

tabby

Source code editor written in Go using go-gtk bindings. It aims to handle navigation effectively among large number of files.

screenshot:

tabby!

dependencies:

go go-gtk libgtk2.0-dev libgtksourceview2.0-dev

build & run:

  1. Install Go & set GOPATH
  2. Put tabby git repo into your $GOPATH/src/ directory
  3. type "go install tabby"
  4. call $GOPATH/bin/tabby
Owner
Comments
  • pull request

    pull request

    I updated go-gtk for this. If you get errors with window position or lack of GtkCheckMenuItem, just update go-gtk

    Also, I changed the way new files work. This is because I lost work a few times when pressing F7, F8 for reference before saving

  • crash on startup, probably for lack of .tabby

    crash on startup, probably for lack of .tabby

    tabby: unable to Open file for reading: /home/mark/.tabby panic: runtime error: invalid memory address or nil pointer dereference

    panic PC=0x7f51ec77db98 runtime.panic+0xb2 /home/mark/go/src/pkg/runtime/proc.c:1028 runtime.panic(0x488fac, 0x7f51ec77a4c0) runtime.panicstring+0x69 /home/mark/go/src/pkg/runtime/runtime.c:86 runtime.panicstring(0x626367, 0x7f51ec7bd180) runtime.sigpanic+0x144 /home/mark/go/src/pkg/runtime/linux/thread.c:286 runtime.sigpanic() bufio._Reader·ReadSlice+0x61 /home/mark/go/src/pkg/bufio/bufio.go:251 bufio._Reader·ReadSlice(0x0, 0x7f51ec70a, 0x0, 0x0, 0x0, ...) bufio._Reader·ReadBytes+0xdd /home/mark/go/src/pkg/bufio/bufio.go:300 bufio._Reader·ReadBytes(0x0, 0x40d10a, 0x0, 0x0, 0x0, ...) bufio._Reader·ReadString+0x59 /home/mark/go/src/pkg/bufio/bufio.go:338 bufio._Reader·ReadString(0x0, 0x20041360a, 0x0, 0x0, 0x0, ...) main.next_string_from_reader+0x2a /home/mark/tabby/src/session.go:72 main.next_string_from_reader(0x0, 0x7f51ec77a4b0, 0x0, 0x0, 0x7, ...) main.session_restore+0xc4 /home/mark/tabby/src/session.go:52 main.session_restore() main.init_vars+0x6a /home/mark/tabby/src/main.go:230 main.init_vars() main.init_tabby+0x18c5 /home/mark/tabby/src/main.go:218 main.init_tabby() main.main+0x29 /home/mark/tabby/src/main.go:236 main.main() runtime.mainstart+0xf /home/mark/go/src/pkg/runtime/amd64/asm.s:77 runtime.mainstart() runtime.goexit /home/mark/go/src/pkg/runtime/proc.c:146 runtime.goexit()

    goroutine 2 [3]: runtime.entersyscall+0x28 /home/mark/go/src/pkg/runtime/proc.c:567 runtime.entersyscall() syscall.Syscall+0x5 /home/mark/go/src/pkg/syscall/asm_linux_amd64.s:15 syscall.Syscall() syscall.Read+0x66 /home/mark/go/src/pkg/syscall/zsyscall_linux_amd64.go:472 syscall.Read(0x6, 0x7f51ec84d000, 0x400000004000, 0x7f51ec7abee0, 0x100000001, ...) main.inotify_observe_collect+0xa4 /home/mark/tabby/src/inotify.go:110 main.inotify_observe_collect(0x7f51ec84d000, 0x400000004000, 0x4000, 0x7f51ec84d000, 0x400000004000, ...) main.inotify_observe+0x9d /home/mark/tabby/src/inotify.go:70 main.inotify_observe() runtime.goexit /home/mark/go/src/pkg/runtime/proc.c:146 runtime.goexit()

  • Changes due to go weekly &

    Changes due to go weekly &

    Simply made some fixes for compatibility with go weekly 04-27-2011. Also made corrections for type mismatch errors with GtkResponseType and int. I am curious what caused that to crop up, haven't found an answer yet.

  • tabby compile fails with new weekly Go.

    tabby compile fails with new weekly Go.

    I have run into type mismatch issues in find.go. GtkResponseType is not being recognized as an int. I have been told the variables need to be passed as stored value. What do I need to change in the code to fix this?

  • Fix build with the latest go-gtk (8e0e1ef122)

    Fix build with the latest go-gtk (8e0e1ef122)

    go-gtk was refactored a bit:

    • Removed GTK_ prefixes.
    • Removed Gtk prefixes.
    • Functions for creation widgets have now New prefix.
    • Some functions accept ResponseType istead of int (gtk.RESPONSE_ACCEPT).
  • fix package path. and make working gofmt without $GOBIN.

    fix package path. and make working gofmt without $GOBIN.

    Hi.

    Thanks for your working about tabby. I changed package path of go-gtk. If you accept my changes, please check and include.

    And once thing, on my environment, I don't define $GOBIN. perhaps many developer in golang_dev forum don't define it. I added change about fixing this problem.

    Thanks.

  • window resizing broken in debian unstable

    window resizing broken in debian unstable

    I'm using debian unstable. All my package versions are listed here: http://pastebin.com/LckxyS3M

    After opening tabby, resizing the window only updates the external canvas and not the inner parts of the window. Screenshot: http://imgur.com/39GoL

    The mouse cursor indicates the problem.

    This only became a problem when I moved to debian unstable. Ubuntu 11.04 was working fine.

Related tags
MdEdit is a Vi-like markdown editor built using Gio

MdEdit MdEdit is a Vi-like markdown editor built using Gio. It is extremely early stage software. The Vi editor lacks most functionality and might be

Jun 29, 2022
Binary editor written in Go
Binary editor written in Go

bed Binary editor written in Go Screenshot Why? Why not? Programming is so fun! I learned so much while creating this editor; handling of file pointer

Jan 5, 2023
A graphical text editor
A graphical text editor

A A is a text editor inspired by the Sam and Acme text editors for the Plan 9 operating system. binary Latest Binaries https://github.com/as/a/release

Dec 13, 2022
A Programmer's Text Editor
A Programmer's Text Editor

The de Editor de is a programmer's editor. (Where that programmer happens to be driusan.) It's kind of like a bastard child of vim and Plan 9's acme e

Dec 8, 2022
A very religious text editor

--== Godit - a very religious text editor ==-- Screenshots: * https://nosmileface.dev/images/godit-linux1.png * https://nosmileface.dev/images/god

Dec 27, 2022
A modern and intuitive terminal-based text editor
A modern and intuitive terminal-based text editor

micro is a terminal-based text editor that aims to be easy to use and intuitive, while also taking advantage of the capabilities of modern terminals.

Dec 30, 2022
An Enhanced Go Experience For The Atom Editor
An Enhanced Go Experience For The Atom Editor

go-plus An Improved Go Experience For The Atom Editor Github: https://github.com/joefitzgerald/go-plus Atom: https://atom.io/packages/go-plus Overview

Dec 26, 2022
Go version of Plan9 Acme Editor

Overview Go port of Rob Pike's Acme editor. Derived from ProjectSerenity but now increasingly divergent. ProjectSerenity was itself a transliteration

Dec 24, 2022
WYSIWYG theme editor for Fyne
WYSIWYG theme editor for Fyne

fyne-theme-generator WYSIWYG theme editor for Fyne Installation go get github.com/lusingander/fyne-theme-generator Usage You can change each parameter

Jan 5, 2023
VS Code code snippet generator

VS Code code snippets generator.

Sep 2, 2022
A Golang plugin collection for SublimeText 3, providing code completion and other IDE-like features.

GoSublime Intro GoSublime is an IDE-like plugin for Sublime Text 3 mainly, but not limited to, providing integration for most of your Go/Golang develo

Jan 4, 2023
Go extension for VS Code
Go extension for VS Code

Go for Visual Studio Code The VS Code Go extension provides rich language support for the Go programming language. Quick Start Welcome! ???? Whether y

Jan 7, 2023
gide is an IDE framework in pure Go, using the GoGi gui. It extensively adopts emacs keybindings.
gide is an IDE framework in pure Go, using the GoGi gui.  It extensively adopts emacs keybindings.

Gide Gide is a flexible IDE (integrated development environment) framework in pure Go, using the GoGi GUI (for which it serves as a continuous testing

Jan 8, 2023
Blue is a lightweight cloud-native gateway solution to handle millions of routing endpoints with a large number of connections.
Blue is a lightweight cloud-native gateway solution to handle millions of routing endpoints with a large number of connections.

Blue is a lightweight cloud-native gateway solution to handle millions of routing endpoints with a large number of connections.

Jan 19, 2022
lls is lightweight ls. Using lls, you can get a list of files in a directory that contains a large number of files.

lls lls is lightweight ls. Using lls, you can get a list of files in a directory that contains a large number of files. How? You allocate a buffer for

Dec 29, 2022
Visualize how a projects source code is distributed among its files and folders
Visualize how a projects source code is distributed among its files and folders

Source Code Visualizer Visualize the code distribution in a project. Applications Applications include: Visualizing code distribution for more educate

Jul 31, 2022
Guess-number-game - Computer thoughts of some integer number, you must guess it with limited number of attempts
Guess-number-game - Computer thoughts of some integer number, you must guess it with limited number of attempts

Guess number game Rules Computer has thought of some integer number. You must guess it, you have numberOfAttempts attempts. How to run Just type in co

Dec 31, 2021
gobbi is a set of generated Go bindings for gtk et al.

gobbi gobject bindings gobbi is a set of generated Go bindings for gobject based libraries. There are bindings, with varying degrees of completeness,

May 6, 2022
A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy.
A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy.

Fake-SMS A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a pr

Dec 31, 2022
A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy
A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy

Fake-SMS A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a pr

Dec 31, 2022