Giter VIP home page Giter VIP logo

nano-sidebar's Introduction

GNU Emacs / N Λ N O sidebar

This package allows to have configurable sidebars on a per frame basis.

Installation

Install with straight.el:

(straight-use-package '(nano-sidebar :type git :host github
                                     :repo "rougier/nano-sidebar"))

... or install with quelpa:

(use-package nano-sidebar
  :ensure nil
  :defer t
  :quelpa (nano-sidebar
           :fetcher github
           :repo "rougier/nano-sidebar"))

Usage

It is possible to use the sidebar without any configuration

(require 'nano-sidebar)

(nano-sidebar-toggle)

In such case, a sidebar with default values is created and the default init function is called.

You can also configure sidebars individually by first naming your frame and then provide a specific configuration:

(defun nano-sidebar-mu4e-init (frame sidebar)
  (select-frame sidebar)
  (do-some-stuff...))

(add-to-list 'nano-sidebar-properties
   `("mu4e"    36 dark ,nano-dark-background nano-sidebar-mu4e-init))

(set-frame-parameter nil 'name "mu4e")
(nano-sidebar-toggle)

Screenshots

This screenshot shows a sidebar displaying a custom ibuffer. See nano-sidebar-ibuffer.el

This screenshot shows a sidebar displaying a mu4e dashboard. See mu4e-dashboard

nano-sidebar's People

Contributors

nlte avatar rougier avatar syohex 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

nano-sidebar's Issues

Global navigation sidebar for opened or unopened buffers

I'm loving the look of the nano-sidebar, but I'm looking to create a "fixed" (as in the links to the buffers exist or can be opened whether you've got the buffer alredy open or not), but am having trouble figuring out how to force "links" to do things like open the buffer Org Agenda if it is not already open etc (which is GTD) in my normal nav..

This is the effect I am going for (yes, stolen from my Notion and recreated in logseq). I figured I can just move back to emacs if I can just crack this somewhat.

Is there some documentation on how I might accomplish this as trying to do this with "links" is not working as well as I would like though I may be missing the point of nano-sidebar entirely or trying to bend it in ways it was not intended.

Notion
Resonance_Cal

Logseq

Logseq

A "link" like GTD just points at agenda, while Log would point at the latest day logfile I have (in the form yyyy-mm-dd.org) though being able to "collect" up those types of files as a listing woudl also be amazing.

Anyhow, would love to know if nano-sidebar is the right tool to try to do this with... (or any idea you might have...).

tab suport?

I'm just looking at this package after having seen some of your other work. Your readme says sidebars are "per-frame", but do you know whether they can e per-tab as well? Sorry for just asking a question, I wasn't sure how to look for this in the code.

the side-bar takes a whole buffer

when i use the nano-sidebar-toggle, it takes a whole buffer instead of just the "side"
is there a way so i can configure it on a specific width?

2021-08-31-1630385433_990x644

no sidebar displayed in emacs 28

might be related to #5 , as I use tabs extensively, but it also seems to apply with tab-bar-mode turned off.

here's my use-package:

(use-package nano-sidebar
  :ensure nil
  :defer t
  :quelpa (nano-sidebar
           :fetcher github
           :repo "rougier/nano-sidebar")
  :commands (nano-sidebar-toggle))

running nano-sidebar-toggle and stepping through, it appears that the sidebar frame already exists, but I am unable to find it or switch to it using frame-next. For instance, i nmy current session (frame-list) gives:

(#<frame emacs@anarres 0x556cc03b42e8> #<frame NΛNO sidebar 0x556ccf3a9bd8> 
#<frame *elfeed-search* 0x556cc179fe50> #<frame /home/matt/WDW235/Announcements.org 0x556cc014f870> 
#<frame emacs@anarres 0x556cbb030140> #<frame  *Minibuf-1* 0x556cb9ef9c00>)

Since I don't understand the underlying tab implementation, I worry that there's some interference between those levels. I don't understand the frame internals well enough to test effectively, either.

Thanks!

How to configure nano-sidebar for org-agenda?

I recently rewatched your talk in EmacsConf 2021, and I was wondering how did you get the sidebar for the org-agenda in this slide

image
Source: https://youtu.be/7OTe26RZH9A?t=334

The result is so clean and informative that I would like to replicate for my own agenda. However, I don't understand yet how to make this work.

Maybe if you could provide a full example in the README, the user could make any necessary modifications.

Thanks for your time.

wrong header-line face

CleanShot 2021-08-31 at 15 33 48@2x

GNU Emacs 27.2 (build 1, x86_64-apple-darwin20.5.0, Carbon Version 164 AppKit 2022.5) of 2021-06-03 macOS 11.5.2

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.