Sublime Forum

Origami: Pane traversal, creation, and destruction

#15

[quote=“Phunky”]Awesome plugin :smile: I have a few requests;

  1. Carry and Create would be awesome
  2. Destroy and move current tabs to new panel
  3. GoTo support
  4. Save as layout? So you can go to a new project and just enable a certain layout?

Seriously though this is brill :smile:[/quote]

  1. I’m pretty certain you can chain commands in keybindings (or was that only in Sublime Text 1?). If not, a carry+create could be added.
  2. Can you describe this in more detail? Are you saying when you destroy a pane you want all the tabs in it to go to the newly-focussed pane?
  3. Do you want the commands to show up in the command palette?
  4. Save as layout could be pretty awesome. It also would be really easy… lemme see what I can do.
0 Likes

#16

Didn’t know about chaining keybindings i’ll take a look at that :smile:

Lets says you have one pane open with two tabs (HTML & CSS), we then create a new pane and move the CSS file over to it so we can compare HTML & CSS. I then wish to go back to a single pane but keep all files open, so I would like to destroy the selected pane while moving its files to the last active one.

Yep!

[quote=“adzenith”]
4. Save as layout could be pretty awesome. It also would be really easy… lemme see what I can do.[/quote]

Awesome :smiley:

0 Likes

#17

Isn’t it how it works currently ?
Closing a pane never close the files it contains, ST2 move it to another pane. I don’t know if it is the last active one or the previous one.

0 Likes

#18

Sounds like he wants a command that will close the pane of the active view, rather than one in a specifiable direction from it.

0 Likes

#19

Oh, I see. This is actually more difficult because if you have more than two panes, where do you and your files end up? That’s why you can only destroy a different pane. If you’ve got two panes, just destroy the other one and everything should work…?

0 Likes

#20

where do you and your files end up?

I think you’d still key in a direction, it would just mean destroy current pane, move in the direction specified, drag the views, making the currently active view active in the group dragged to.

0 Likes

#21

adzenith, I don’t know if it’s wanted or needed, but I’ve made a sublime-menu file for Origami for personal use for those times I forget the shortcuts. Let me know if you want to take a look at it.


0 Likes

#22

[quote=“nizur”]adzenith, I don’t know if it’s wanted or needed, but I’ve made a sublime-menu file for Origami for personal use for those times I forget the shortcuts. Let me know if you want to take a look at it.

[attachment=0]Screenshot-2012-07-03-5.png[/attachment][/quote]

Awww please share this :smile: or send a pull request!

0 Likes

#23

Accepted the pull request! Thanks!

0 Likes

#24

Great! Glad I could contribute. :smile:

0 Likes

#25

I see your menu items and I raise you one a full set of commands:


	{ "command": "create_pane", "args": {"direction": "up"}, "caption": "Origami: Create Pane Above" },
	{ "command": "create_pane", "args": {"direction": "down"}, "caption": "Origami: Create Pane Below" },
	{ "command": "create_pane", "args": {"direction": "right"}, "caption": "Origami: Create Pane Right" },
	{ "command": "create_pane", "args": {"direction": "left"}, "caption": "Origami: Create Pane Left" },
	{ "command": "travel_to_pane", "args": {"direction": "up"}, "caption": "Origami: Focus on Pane Above" },
	{ "command": "travel_to_pane", "args": {"direction": "down"}, "caption": "Origami: Focus on Pane Below" },
	{ "command": "travel_to_pane", "args": {"direction": "right"}, "caption": "Origami: Focus on Pane Right" },
	{ "command": "travel_to_pane", "args": {"direction": "left"}, "caption": "Origami: Focus on Pane Left" },
	{ "command": "destroy_pane", "args": {"direction": "up"}, "caption": "Origami: Destroy Pane Above" },
	{ "command": "destroy_pane", "args": {"direction": "down"}, "caption": "Origami: Destroy Pane Below" },
	{ "command": "destroy_pane", "args": {"direction": "right"}, "caption": "Origami: Destroy Pane Right" },
	{ "command": "destroy_pane", "args": {"direction": "left"}, "caption": "Origami: Destroy Pane Left" },
	{ "command": "carry_file_to_pane", "args": {"direction": "up"}, "caption": "Origami: Move File Above" },
	{ "command": "carry_file_to_pane", "args": {"direction": "down"}, "caption": "Origami: Move File Below" },
	{ "command": "carry_file_to_pane", "args": {"direction": "right"}, "caption": "Origami: Move File Right" },
	{ "command": "carry_file_to_pane", "args": {"direction": "left"}, "caption": "Origami: Move File Left" },
	{ "command": "clone_file_to_pane", "args": {"direction": "up"}, "caption": "Origami: Clone File Above" },
	{ "command": "clone_file_to_pane", "args": {"direction": "down"}, "caption": "Origami: Clone File Below" },
	{ "command": "clone_file_to_pane", "args": {"direction": "right"}, "caption": "Origami: Clone File Right" },
	{ "command": "clone_file_to_pane", "args": {"direction": "left"}, "caption": "Origami: Clone File Left" }
]

Origami is a great plugin but I thought (correctly, as it turned out) that they keybindings were too convoluted for me to remember. I liked the idea of putting them in a menu, but I prefer leveraging ST2’s command palette where possible, hence the above.

I’ve been using this for a couple hours now and I find myself in a bit of a UX muddle. I have incorporated @nizur’s idea of above/below instead of @adzenith’s up/down (which made more sense when using the keybindings), although I do sometimes mix them up. For example, it may make more sense to say “move file up” while also saying “clone file above” (the first refers to the movement of the file, while the other refers to the position of the pane).

I think “move” is better than “carry” and most anything is better than “travel”, although my current “focus” doesn’t work very well with ST’s fuzzy search (because of the plethora of “file” commands).

Apologies if the above couple paragraphs made no sense. If you do use the commands, please let me/us/someone know if you have any suggestions on how to improve them.

Thanks,
Alex

0 Likes

#26

I installed this plugin last night; I don’t see the preferences menu. Would be nice. On OSX, cmd+k is not invoking origami.

0 Likes

#27

You can see the options under View > Origami.

Super+K does not invoke anything by itself. It’s the first step in a chain:
github.com/SublimeText/Origami# … -shortcuts

E.g., to create a pane on the right you would do: Super+K, Super+Right

0 Likes

#28

[quote=“quodlibet”]You can see the options under View > Origami.

Super+K does not invoke anything by itself. It’s the first step in a chain:
github.com/SublimeText/Origami# … -shortcuts

E.g., to create a pane on the right you would do: Super+K, Super+Right[/quote]

hitting super+k twice causes the current line to be deleted. Are you sure super+K isnt mapped to something?

How would I move the current file to the pane on the right or left?

0 Likes

#29

Then don’t press it twice :smile:

Super+k is bound as the first part in several chains in the default Sublime keybindings. Look in Packages/Default/Default (OSX).sublime-keymap to see what they are. For example, super+k, super+k deletes to the end of line (as you’ve discovered).

Now, moving on to Origami’s keybindings…

Super+k, super+right to create an empty pane on the right
Super+k, shift+right to move the current file to the pane on the right

Similarly, for the left. I hope this makes sense.

Incidentally, I find Origami’s bindings to be too complex for my infrequent use of them. You may want to use the menu until stuff starts to make sense. I’ve also put together a set of commands (four posts up) that can be accessed from the palette. To use these, copy & paste them in a file called, say, Origami.sublime-commands and put in your Packages/User directory. This is much slower than using the keybindings, but more reliable (for my weary brain, at least).

0 Likes

#30

I’ve added a sublime-commands file to the plugin (thanks quodlibet!) so you should see this show up if you update through the package manager.

Incidentally, my mnemonic is something like this:
• arrows move
• shift + arrows move, but bring the file with (“shift” holds on to the file)
• cmd+arrows make a pane
• shift+cmd+arrows destroy a pane (“shift” swaps it up)
• option+arrows clones (“option” is the standard for copying, like in an option-drag)

0 Likes

#31

it was right in front of me in that menu and i missed it. sorry and thanx.

0 Likes

#32

I’ve added code to grey out inactive panes:
github.com/SublimeText/Origami/ … ctive_pane

So question: should I push this out to everyone who has Origami, and auto-dim their inactive panes for them? I’m pretty certain everyone would like the new unexpected change, but maybe they wouldn’t all.

It does this, automatically (active on the left, inactive on the right):


0 Likes

#33

After a bit of discussion on other venues, I’ve pushed this. Use “fade_inactive_panes”:false to stop it.

0 Likes

#34

Damn… That auto-dimming is such a clever idea. Great job adzenith.

0 Likes