File: hib-social.el.html

This defines an implicit button type, social-reference, that displays
  information (often a web page) associated with the given hashtag or username.
  When the referent is a web page, this calls the function given by
  hibtypes-social-display-function to display it, initially set to browse-url.

  A hashtag reference is either: [facebook|github|gitlab|git|instagram|twitter|x]#<hashtag>
  or using 1 to 2-letter service abbreviations: [fb|gh|gl|gt|in|tw|x]#<hashtag>.

  A username reference is either: [facebook|github|gitlab|instagram|twitter|x]@<username>
  or [fb|gh|gl|in|tw|x]@<username>.

  If the social media service is not given, it defaults to the value of
  hibtypes-social-default-service, initially set to \"x\\".

  Below are a list of examples; simply press the Action Key on each one
  to test it; use the Assist Key to see what it will do. The git
  examples require that you have a local git clone of the Hyperbole
  repository.

    facebook@zuck Display user's home page
    github@rswgnu
    gitlab@seriyalexandrov
    instagram@lostart
    x@nytimestravel

    fb#technology Display page of hashtag matches
    in#art
    x#travel

  Git (local) reference links

    git#branches List branches in current repo/project
    git#commits List and browse commits for current project
    git#tags List tags in current project

    git#/hyperbole From any buffer, dired on the top
                                              directory of the local hyperbole
                                              project (notice no =)

    git#/hyperbole/55a1f0 or From any buffer, display hyperbole
    git#hyperbole/55a1f0 local git commit diff

    git#55a1f0 Based on current default-directory,
                                              display current repo's local git
                                              commit diff; works when default-directory
                                              is inside a git project with commit
                                              hashtag 55a1f0

    commit 55a1f0 Commits listed in 'git log' output
                                              also display diffs.

    (setq hibtypes-git-default-project "hyperbole")
    git#55a1f0 From any buffer, once the above default
                                              is set, display current project's local
                                              git commit diff
    git#master Show latest commit entry and diff for branch
    git#hyperbole-7.0.0 From any buffer, show the commit diff
                                              for tag hyperbole-7.0.0

    When you want to be more explicit, use:

      git#commit/55a1f0
      git#branch/master
      git#tag/hyperbole-7.0.0

    To edit and view git managed files (note the =):

      git#=hibtypes.el Edit any local git-versioned file
                                              in another window; file must match
                                              to the last part of a pathname
      git#=partial-path/file
      git#=/path/file Both work, constraining the lookup more.
      git#=hyperbole.pdf Typically displays Hyperbole manual
                                              in an external viewer

      git#=master:hyperbole.el View a file or other entity from a specific branch
      git#=master:kotl/kview.el View a branch file located in a project subdirectory

  Github (remote) reference links

    gh@rswgnu Display user's home page & projects

    github#rswgnu/hyperbole Display user's project
    gh#rswgnu/helm/global_mouse Display user project's branch
    gh#rswgnu/hyperbole/55a1f0 Display user project's commit diff

    gh#orgs/github/people (or staff) List the org, github's staff
    gh#/github/fetch/contributors List contributors to github's fetch project

    (setq hibtypes-github-default-user "rswgnu")
    github#/hyperbole Display default user's project


    Once you set the default user and project variables, you can leave
    them off any reference links:

      (setq hibtypes-github-default-user "emacs-helm")
      (setq hibtypes-github-default-project "helm")

    like so:

      gh#pulls List project's open pull requests (PRs)
      gh#pull/1871 Display a specific project pull request

      gh#issues List emacs-helm/helm's open issues
      gh#1878 Display a specific project issue (or PR)

      gh#branches List project's branches
      gh#branch/global_mouse List files in a specific branch
      gh#global_mouse You can even leave off the branch keyword

      gh#tags List project's tagged commits, typically releases
      gh#tag/v2.8.4 or gh#v2.8.4 List files in a specific tagged commit

      gh#commits List project's commits
      gh#898e55c Display default user and default
                                              project commit diff

  Gitlab (remote) reference links support the same reference types as Github (but
  substitute the gl# prefix) plus these additional reference types:

    gl#/libertybsd/libertybsd-status Group and project

    gl#gitlab-org/gitlab-ce/activity Summarize user's project activity
    gl#gitlab-org/gitlab-ce/analytics Display user project's cycle_analytics
    gl#gitlab-org/gitlab-ce/boards Display user project's kanban-type issue boards

    Once you set the default user and project variables, you can leave
    them off any reference links:

      (setq hibtypes-gitlab-default-user "gitlab-org")
      (setq hibtypes-gitlab-default-project "gitlab-ce")

    gl#issues or gl#list Display default project's issue list
    gl#jobs Display default project's computing jobs
    gl#labels Display default project's issue categories
    gl#members Display default project's staff list
    gl#contributors Show contributor push frequency charts
    gl#merge_requests or gl#pulls Display default project's pull requests
    gl#milestones Display default project's milestones status
    gl#pages Display default project's web pages
    gl#pipelines List build and test sequences
    gl#pipeline_charts Graphical view of pipeline run results across time
    gl#schedules Display schedules for project pipelines
    gl#snippets Project snippets, diffs and text with discussion

    gl#groups List all available groups of projects
    gl#projects List all available projects

    gl#milestone=38 Show a specific project milestone
    gl#snippet=1689487 Show a specific project snippet

Defined variables (13)

hibtypes-git-default-projectDefault project name to associate with any local git commit link.
hibtypes-git-repos-cacheFilename of cache of local git repository directories found by ‘locate-command’.
hibtypes-git-use-magit-flagNon-nil means use ‘magit’ rather than ‘dired’ for a git directory button.
hibtypes-github-default-projectDefault project name to associate with any Github commit link.
hibtypes-github-default-userDefault user name to associate with any Github commit link.
hibtypes-gitlab-default-projectDefault project name to associate with any Github commit link.
hibtypes-gitlab-default-userDefault user name to associate with any Github commit link.
hibtypes-social-default-serviceLowercase string matching the social media service to use as a default.
hibtypes-social-display-functionFunction of one arg, url, to display when activating a social media reference.
hibtypes-social-hashtag-alistAlist of (social-media-service-regexp . to-display-hashtag-reference) elements.
hibtypes-social-inhibit-modesList of major modes in which to inhibit any possible social media tag matches.
hibtypes-social-regexpRegexp that matches a social media/git hashtag or username reference.
hibtypes-social-username-alistAlist of (social-media-service-regexp . url-with-%s-for-username) elements.

Defined functions (12)

git-find-file(FILE)
git-reference(REFERENCE &optional PROJECT)
gitlab-reference(REFERENCE &optional USER PROJECT)
hibtypes-git-add-project-to-repos-cache(PROJECT)
hibtypes-git-build-or-add-to-repos-cache(PROJECT)
hibtypes-git-build-repos-cache(&optional PROMPT-FLAG)
hibtypes-git-find(FILE)
hibtypes-git-find-execute(FORMAT-PREFIX FIND-DIR FILE)
hibtypes-git-get-locate-command()
hibtypes-git-project-directory(PROJECT)
ibtypes::git-commit-reference()
social-reference(SERVICE REF-KIND-STR HASHTAG-OR-USERNAME)

Defined faces (0)