Giter Club home page Giter Club logo

microviche's Introduction

#microViche MicroViche is sort of like a microfiche reader: it lets you pan and zoom through text. Installation is simple: download nav.vim, open Vim, :source nav.vim, and press f10. Check out the youtube video!

####Commands Use the mouse to pan or evoke commands with f10:

h j k l y u b n pan (takes count) f1 help and warnings
r M redraw visible / all o open map
A D append / delete split L insert label
S W settings / save settings q esc quit

In the map (f10 o):

h j k l y u b n move (takes count) f1 help and warnings
H J K L Y U B N pan (takes count) z zoom
g enter doubleclick goto label c C center cursor / view
click drag select / pan q esc quit
p P prev / next in history

####Labels Labels are lines that start with a label marker (default txb:) and specify an anchor, title, or both. When the map is updated (f10 r, o, and M), displaced labels are reanchored by inserting or removing immediately preceding blank lines. Anchoring failures are shown in the map.

The syntax is marker(anchor)(:)( title#highlght#comment), but let's just consider some examples:
   txb:345 blah blah        anchor to line 345
   txb:345: Intro#Search    anchor 345, title Intro, color Search (Note the : separator).
   txb: Intro               just title Intro
   txb: Intro## blah blah   just title Intro

####Tips

  • To resolve labeling conflicts, the case-insensitive alphabetically first title starting with ! will be shown, eg, txb:321: !aaaImportant. On cursor-over, the rest will be shown in line number order.
  • Terminal emulators work better than gVim since the latter doesn't support mousing in map mode or automatic redrawing on window / font resize. Cygwin (and the bundled mintty terminal emulator) is a great Windows setup.
  • To disable scrollbinding: f10 Settings→ change autoexe to se noscb nowrap→apply all
  • Keyboard-free navigation is possible: dragging to the topleft corner opens the map and clicking the topleft corner closes it. (Terminal emulator only; ttymouse must be set to sgr or xterm2.)
  • If you have an inaccessible hotkey, :call TxbKey('S') for Settings.
  • To highight labels, try: syntax match Title +^txb\S*: \zs.[^#\n]*+ oneline display

microviche's People

Contributors

q335r49 avatar

Stargazers

 avatar Raphael Wimmer avatar  avatar  avatar Lorenzo Bivens avatar John Sidiropoulos avatar Jose Quesada avatar Igor Burago avatar Will Owens avatar Daniel Pfurtscheller avatar Anton Strogonoff avatar Yuri Karabatov avatar  avatar Amar Sood avatar  avatar  avatar Yuval Kogman avatar Wayne Buckhanan avatar Suchan An avatar Adelar da Silva Queiróz avatar Matthew Reishus avatar Reuben avatar Neophyte of Novelty in Modern Technology avatar Enno avatar  avatar Rick Cogley avatar Chris Watson avatar Robert Audi avatar Borys Serebrov avatar  avatar Paul Adenot avatar Curtis Alexander avatar somename123 avatar Josh Waller avatar Zak B. Elep avatar mailmanpat avatar Jason Kuhrt avatar Mike Easley avatar Phil Pirozhkov avatar  avatar Tomáš Horáček avatar Michael Robinson avatar  avatar  avatar Fritz Blueford avatar Richard McCollister avatar  avatar Giorgio Robino avatar Romuald Bruno Aquinas avatar Kevin avatar Zach Denton avatar Troels Thomsen avatar hq1 avatar Artem Vovsia avatar  avatar  avatar Sean Ballinger avatar Nazeeruddin Ikram avatar  avatar Simon Friis Vindum avatar Antti Korpi avatar Edu Fernández avatar Naupaka Zimmerman avatar rey avatar  avatar Joey Hewitt avatar Erik Peterson avatar Boris Jonica avatar James Tomasino avatar Max Gillett avatar Harrison Powers avatar Dmitry Malikov avatar Nicola Paolucci avatar Aaron O'Leary avatar Oscar Morante avatar Jason avatar Rolf Morel avatar yanyaoer avatar Marc Laugharn avatar Matthew Strawbridge avatar Xitong Gao avatar Nicolas Hillegeer avatar Milan Svoboda avatar Justin M. Keyes avatar  avatar Jiri Pospisil avatar Daniel Hahler avatar André Santos avatar Azrea Amis avatar Maxim Khailo avatar Bo Feng avatar Alejandro Exojo avatar haya14busa avatar Pratheek avatar  avatar  avatar Bilal Quadri avatar Andrew Missel avatar Alex Labach avatar Morton Fox avatar

Watchers

 avatar Reuben avatar  avatar ed avatar

microviche's Issues

Scroll binding toggle key

Hi,

I like the plugin, and I've been experimenting with it.
There is mention of Scrollbinding in the docs and videos, but I just can't manage to toggle it.

Can you please tell me how it can be done?

Thanks,
robcsi

Why are the docs in the main vim file?

Pardon, I haven't written a plugin and don't know if there are strange support cases. Is there a reason to put help info in the main plugin code as a function?

  • Is this to re-write the names of the keys that are mapped to textabyss variables?
  • Could this be solved by using more descriptive variable names and then just use them as 'the API' described by the docs?

Window width setting

Hi,

I'd also like to be able to set the width of a window, or have the possibility to change to default width of all the windows.
The purpose would be to use the plugin with many source code files for programming.

Is this possible?

Thanks,
robcsi

Error during panning: <SID> not in a script context

VIM 7.3 on Linux.

Commands:

:so ..../nav.vim
<F10>
test1.*<Enter><Enter>

After that, trying to pan with the mouse produces the following error messages:

E120: Using <SID> not in a script context: s:initDragXterm2
E15: Invalid expression: get(TXBmsCmd,&ttymouse,TXBmsCmd.default)()

Tried both in console VIM and GUI VIM (lesstiff).

P.S. Same error in the VIM 7.3 on Windows 7/x64.

open map/planes in a new split instead of new tab

Hi! What's the rationale behind opening Microviche in a new tab by default? Could you add an option for opening it in a new (horizontal) split instead?

I'm typically using a widescreen monitor set to portrait mode, and I'd like to use Microviche for storing "background" information for my main writing project. So I could have both things simultaneously in sight like so:

+---------------------------------+
|               main              |
|              project            |
|                                 |
|                                 |
+---------------------------------+
|  MV     | MV     | MV      |    |
|  plane1 | plane2 | plane3  | .. |
+---------------------------------+

Ideally, both the map and plane could be opened in this lower split. And there could also be an option for going fullscreen when a bigger overview of the map/planes is needed.

I find your plugin really interesting. Thanks for your work!

f10 not working

Hi!
I've tried to use textabyss but I'm getting some trouble.

I cloned the repo with Vundle:

Bundle 'q335r49/textabyss'

And then when I start vim I do:

:source ~/.vim/bundle/textabyss/nav.vim

Which all works and doesn't give me any errors.

Then I change directory:

:cd ~/dropbox/data/planes

And press <f10>, and in the first prompt * and then hit enter a couple of times.
I get my files on splits, and I can pan though them, that works.

The thing is, when I hit to do anything (see the map, or anything), it beeps at me, and does nothing. I don't see any messages or anything.

I've tried debugging the code with echos I can see that when calling <f10> it calls TXBdoCmd(-99) which afterwards calls s:doCmdKeyhandler(-99) which then tries to execute a command from the dictionary:

    exe get(g:TXBkyCmd,a:c,'let s:kc__msg=" Press f1 for help"')

Which is actually empty:

let TXBkyCmd[-99]=""

I'm I doing anything wrong? Do you have any pointers as of how to get it working?

Plane not being saved

I can't get microviche to save the plane/remember the working directory. When I open the help I get the "viminfo not set" warning. :set viminfo+=! doesn't seem to do anything, but I do have a .viminfo file and Vim writes into it as it should. Removing the old .viminfo file and letting Vim create a new one didn't do any good. I've been using a version of textabyss from a few months back (with Vim 7.4) without any issues. Do you know what the problem might be here and could I fix it by manually editing the .viminfo file somehow?

Function keys not reliable on all systems

I work in an environment where the function keys are already hijacked by other things - so pressing them never makes it Vim. I currently patch the code to allow my own key bindings. Would be great if you would support remapping.

I'd say work on features and stability, first, though. You have the chance for an epic niche community.

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.