initial commit
This commit is contained in:
commit
28c01be6e3
17
.gitignore
vendored
Normal file
17
.gitignore
vendored
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
# ignore these directories
|
||||||
|
/.git
|
||||||
|
/recipes
|
||||||
|
|
||||||
|
# ignore log files
|
||||||
|
/.log
|
||||||
|
|
||||||
|
# ignore generated files
|
||||||
|
*.elc
|
||||||
|
|
||||||
|
# eask packages
|
||||||
|
.eask/
|
||||||
|
dist/
|
||||||
|
|
||||||
|
# packaging
|
||||||
|
*-autoloads.el
|
||||||
|
*-pkg.el
|
14
Eask
Normal file
14
Eask
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
(package "password-gen"
|
||||||
|
"0.1.0"
|
||||||
|
"Password generator for Emacs")
|
||||||
|
|
||||||
|
(website-url "https://labs.phundrak.com/phundrak/password-gen.el")
|
||||||
|
(keywords "")
|
||||||
|
|
||||||
|
(package-file "password-gen.el")
|
||||||
|
|
||||||
|
(script "test" "echo \"Error: no test specified\" && exit 1")
|
||||||
|
|
||||||
|
(source "gnu")
|
||||||
|
|
||||||
|
(depends-on "emacs" "26.1")
|
88
Makefile
Normal file
88
Makefile
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
##
|
||||||
|
# Eask generated template Makefile
|
||||||
|
#
|
||||||
|
# File located in https://github.com/emacs-eask/template-elisp/blob/master/Makefile
|
||||||
|
##
|
||||||
|
|
||||||
|
EMACS ?= emacs
|
||||||
|
EASK ?= eask
|
||||||
|
|
||||||
|
.PHONY: clean package install compile test checkdoc lint
|
||||||
|
|
||||||
|
# CI entry point
|
||||||
|
#
|
||||||
|
# You can add or remove any commands here
|
||||||
|
#
|
||||||
|
# (Option 1): Basic for beginner, only tests for package's installation
|
||||||
|
ci: clean package install compile
|
||||||
|
# (Option 2): Advanced for a high-quality package
|
||||||
|
#ci: clean package install compile checkdoc lint test
|
||||||
|
|
||||||
|
# Build an package artefact, default to `dist` folder
|
||||||
|
#
|
||||||
|
# This is used to test if your package can be built correctly before the
|
||||||
|
# package installation.
|
||||||
|
package:
|
||||||
|
@echo "Packaging..."
|
||||||
|
$(EASK) package
|
||||||
|
|
||||||
|
# Install package
|
||||||
|
#
|
||||||
|
# If your package is a single file package, you generally wouldn't need to
|
||||||
|
install:
|
||||||
|
@echo "Installing..."
|
||||||
|
$(EASK) install
|
||||||
|
|
||||||
|
# Byte-compile package
|
||||||
|
#
|
||||||
|
# Compile all your package .el files to .elc
|
||||||
|
compile:
|
||||||
|
@echo "Compiling..."
|
||||||
|
$(EASK) compile
|
||||||
|
|
||||||
|
# Run regression tests
|
||||||
|
#
|
||||||
|
# The default test is `ert`; but Eask also support other regression test!
|
||||||
|
# See https://emacs-eask.github.io/Getting-Started/Commands-and-options/#-linter
|
||||||
|
test:
|
||||||
|
@echo "Testing..."
|
||||||
|
$(EASK) install-deps --dev
|
||||||
|
$(EASK) test ert ./test/*.el
|
||||||
|
|
||||||
|
# Run checkdoc
|
||||||
|
#
|
||||||
|
# See https://www.emacswiki.org/emacs/CheckDoc
|
||||||
|
checkdoc:
|
||||||
|
@echo "Checking documentation..."
|
||||||
|
$(EASK) lint checkdoc --strict
|
||||||
|
|
||||||
|
# Lint package metadata
|
||||||
|
#
|
||||||
|
# See https://github.com/purcell/package-lint
|
||||||
|
lint:
|
||||||
|
@echo "Linting..."
|
||||||
|
$(EASK) lint package
|
||||||
|
|
||||||
|
# Generate autoloads file
|
||||||
|
#
|
||||||
|
# NOTE: This is generally unnecessary
|
||||||
|
autoloads:
|
||||||
|
@echo "Generating autoloads..."
|
||||||
|
$(EASK) autoloads
|
||||||
|
|
||||||
|
# Generate -pkg file
|
||||||
|
#
|
||||||
|
# NOTE: This is generally unnecessary
|
||||||
|
pkg-file:
|
||||||
|
@echo "Generating -pkg file..."
|
||||||
|
$(EASK) pkg-file
|
||||||
|
|
||||||
|
# Clean up
|
||||||
|
#
|
||||||
|
# This will clean all the entire workspace including the following folders
|
||||||
|
# and files
|
||||||
|
#
|
||||||
|
# - .eask folder (sandbox)
|
||||||
|
# - all .elc files
|
||||||
|
clean:
|
||||||
|
$(EASK) clean all
|
86
README.md
Normal file
86
README.md
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
This project was bootstrapped with [eask/cli](https://github.com/emacs-eask/cli).
|
||||||
|
|
||||||
|
## How to use?
|
||||||
|
|
||||||
|
1. Write and design your package in `your-package.el`
|
||||||
|
2. Install package dependences if any:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask install-deps
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Prepare for installation, package it: (it will create package to `dist` folder)
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask package
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Install the built package:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask install
|
||||||
|
```
|
||||||
|
|
||||||
|
## Compile
|
||||||
|
|
||||||
|
You would want to compile your elisp file to check if there are errors:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask compile
|
||||||
|
```
|
||||||
|
|
||||||
|
## Cleaning
|
||||||
|
|
||||||
|
Simply executes the following:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask clean all
|
||||||
|
```
|
||||||
|
|
||||||
|
For more options, see `eask clean --help`!
|
||||||
|
|
||||||
|
## Linting
|
||||||
|
|
||||||
|
Linting is often optional but recommended to all elisp developers.
|
||||||
|
|
||||||
|
with `checkodc`:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask lint checkodc
|
||||||
|
```
|
||||||
|
|
||||||
|
with `package-lint`:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask lint package # for pacakge-lint
|
||||||
|
```
|
||||||
|
|
||||||
|
For more options, see `eask lint --help`!
|
||||||
|
|
||||||
|
## Testing
|
||||||
|
|
||||||
|
Eask supports [ERT](https://www.gnu.org/software/emacs/manual/html_node/ert/index.html)
|
||||||
|
, [Buttercup](https://github.com/jorgenschaefer/emacs-buttercup)
|
||||||
|
, [Ecukes](https://github.com/ecukes/ecukes), and more.
|
||||||
|
|
||||||
|
For more options, see `eask test --help`!
|
||||||
|
|
||||||
|
## Continuous Integration
|
||||||
|
|
||||||
|
### GitHub Actions
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask generate workflow github
|
||||||
|
```
|
||||||
|
|
||||||
|
### CircleCI
|
||||||
|
|
||||||
|
```sh
|
||||||
|
eask generate workflow circle-ci
|
||||||
|
```
|
||||||
|
|
||||||
|
For more options, see `eask generate workflow --help`!
|
||||||
|
|
||||||
|
## Learn More
|
||||||
|
|
||||||
|
To learn Eask, check out the [Eask documentation](https://github.com/emacs-eask).
|
37
password-gen.el
Normal file
37
password-gen.el
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
;;; password-gen.el --- Password generator for Emacs -*- lexical-binding: t; -*-
|
||||||
|
|
||||||
|
;; Copyright (C) 2024 Lucien Cartier-Tilet
|
||||||
|
|
||||||
|
;; Author: Lucien Cartier-Tilet <lucien@phundrak.com>
|
||||||
|
;; Maintainer: Lucien Cartier-Tilet <lucien@phundrak.com>
|
||||||
|
;; URL: https://labs.phundrak.com/phundrak/password-gen.el
|
||||||
|
;; Version: 0.1.0
|
||||||
|
;; Package-Requires: ((emacs "26.1"))
|
||||||
|
;; Keywords:
|
||||||
|
|
||||||
|
;; This file is not part of GNU Emacs.
|
||||||
|
|
||||||
|
;; This program is free software: you can redistribute it and/or modify
|
||||||
|
;; it under the terms of the GNU General Public License as published by
|
||||||
|
;; the Free Software Foundation, either version 3 of the License, or
|
||||||
|
;; (at your option) any later version.
|
||||||
|
|
||||||
|
;; This program is distributed in the hope that it will be useful,
|
||||||
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
;; GNU General Public License for more details.
|
||||||
|
|
||||||
|
;; You should have received a copy of the GNU General Public License
|
||||||
|
;; along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
;;
|
||||||
|
;; Password generator for Emacs
|
||||||
|
;;
|
||||||
|
|
||||||
|
;;; Code:
|
||||||
|
|
||||||
|
;; Happy coding! ;)
|
||||||
|
|
||||||
|
(provide 'password-gen)
|
||||||
|
;;; password-gen.el ends here
|
Loading…
Reference in New Issue
Block a user