Zero dependency auto-complete and multi-select control for the web
Select protocol using first bytes of incoming data and hose stuff to the handler
Provides some base functions needed by a css-select adapter so that you don't have to implement the whole thing.
Programmatically select the text of a HTML element
An experimental ESLint runner for Jest
View docs [here](https://radix-ui.com/primitives/docs/components/select).
a CSS selector compiler/engine
CSS selector engine supporting jQuery selectors
An extension of svg.js which allows to select elements with mouse
A directory prompt for Inquirer.js
Inquirer select/list prompt
A Select control built with and for ReactJS
The jQuery plugin that brings select elements into the 21st century with intuitive multiselection, searching, and much more. Now with Bootstrap 4 support.
two functions: One that returns true, one that returns false
Wrapper above react-select that supports pagination on menu scroll
Pierre theme for Shiki, VS Code, and more
A fork of react-select with support for option groups
A better switch case
A plugin that provides a basic reset for form styles that makes form elements easy to override with utilities.
tree-select ui component for react
React Select
Drop-down menu for React with windowing to support large numbers of options.
JMESPath implementation in javascript
react-select filterOptions function optimized to quickly filter large options lists
A terminal-based battery indicator written in Rust.
Pure-Rust AV1 codec — orphan-rebuild scaffold pending clean-room re-implementation.
A secure, high-performance messaging protocol library
CKB RPC server
A highly parallel Perl 5 interpreter written in Rust
Senior SysAdmin, Network Admin, Data Analyst, and Software Engineer living in your terminal. A high-precision local AI agent harness for LM Studio, Ollama, and other local OpenAI-compatible runtimes that runs 100% on your own silicon. Reads repos, edits files, runs builds, inspects full network state and workstation telemetry, and runs real Python/JS for data analysis.
Identify processes using files or sockets
A parallel and fast command line toolkit for small and large (>10G) CSV, TXT, and EXCEL files, with a unified api.
A fast, lightweight CLI for interacting with AI language models
Speech-to-text dictation tool for Wayland
A high-performance router and load balancer for LLM APIs like ChatGPT
rcut is a Rust replacement for GNU cut that supports UTF-8.
Capybara helpers for https://select2.org select box (supports Select2 versions 2/3/4)
bootstrap-select Gem for Rails
Provides a form helper to insert a country select box using the ISO 3166 country list, optionally stores just the country code. Compatible with rails 4
== Synopsys <code>Enumerable#filter</code> - extended <code>Enumerable#select</code> == Examples String filter (acts like <code>Enumerable#grep</code>): [1, 2, 3, 'ab'].filter(/a/) # => ['ab'] [1, 2, 3, '3'].filter('3') # => ['3'] You can pass a <code>Proc</code> or <code>Symbol</code>. Methods and blocks are allowed too: [1, 2, 3].filter(&:even?) # => [2] [1, 2, 3].filter(:even?) # => [2] [1, 2, 4].filter { |num| num.even? } # => [2, 4] <code>Enumerable#filter</code> can match against enumerable items attributes. Like this: [1, 2, 3, 4.2].filter :to_i => :even? # => [2, 4] If the block is supplied, each matching element is passed to it, and the block's result is stored in the output array. [1, 2, 4].filter(&:even?) { |n| n + 1 } # => [3, 5] <code>Enumerable#filter</code> also accepts <code>true</code> or <code>false</code> as argument: [0, false, 2, nil].filter(true) # => [0, 2] [0, false, 2, nil].filter(false) # => [false, nil] <code>Enumerable#filter</code> also supports <code>OR</code> operator! Just pass many patterns, they will be joined together with <code>OR</code> operator. [0, 2, 3, 4].filter(:zero?, :odd?) # => [0, 3]
== Synopsys Ruby Enumerable extension. Main idea is lazy computations within enumerators. == Usage Install as a gem: sudo gem install deferred_enum This gem introduces DeferredEnumerator class: ary = [1, 2, 3, 4] deferred = ary.defer # #<DeferredEnumerator: [1, 2, 3, 4]:each> DeferredEnumerator brings some optimizations to all?, any? and none? predicates deferred.all?(&:even?) # Will stop iteration after first false-result = 1 iteration deferred.none?(&:even?) # 2 iterations deferred.any?(&:even?) # 2 iterations It also introduces lazy versions of Enumerable's #select, #map and #reject methods deferred.map { |i| i + 1 } # #<DeferredEnumerator: #<Enumerator::Generator>:each> deferred.select { |i| i.even? } # #<DeferredEnumerator: #<Enumerator::Generator>:each> deferred.reject { |i| i.odd? } # #<DeferredEnumerator: #<Enumerator::Generator>:each> So you can safely chain your filters, they won't be treated as arrays: deferred.map(&:succ).select(&:even?) # #<DeferredEnumerator: #<Enumerator::Generator>:each> You can build chains of Enumerables: deferred.concat([2]).to_a # [1, 2, 3, 4, 2] Or append elements to the end of enumerator: deferred << 2 You can even remove duplicates from enumerator, though this operation can be tough: deferred.uniq # #<DeferredEnumerator: #<Enumerator::Generator>:each> There are many other methods in DeferredEnumerator, please refer to documentation.
# Wuffl <strong> 1. Introduction </strong> Wuffl is a simple image viewer which can move pictures either to a „Selected“ folder or to a „Deleted“ folder. "Selected" and "Deleted" folders are located in the same folder as the chosen picture. Wuffl is available for Linux Ubuntu >=14.04, Mac >= OS Ventura and Windows >=10. Imagine you review you vacation photographs and you need to select which pictures to show to your friends at the next party, or you work your way through a bunch of old pictures and you need to select a view of them for a anniversary celebration. Wuffl allows you to move the picture to an extra folder ("Selected") or to a "Deleted" folder while viewing it. <strong> 2. Installation </strong> To use the Wuffl image viewer you require: <ul> <li> <a href="https://www.ruby-lang.org/en/downloads/"><code>ruby</code></a> (v2.4) </ul> as well as the following Ruby gems: <ul> <li><code>fastimage</code> <li><code>fileutils</code> <li><code>gtk3</code> <li><code>stringio</code></li> </ul> Get the Wullf image viewer by typing ```gem install wuffl``` in your command line. This will install the wuffl gem as well as the gems mentined above. <strong>3. Usage</strong> Using your terminal or cmd start Wuffl by typing <code> wuffl</code> After starting Wuffl you'll see a start screen with a line of buttons at the bottom. To select an image go to the top left corner, klick on <code>File</code> → <code>Open file</code> and browse to the location of you images. Then select an image and click <code>open</code> or just doubleclick on the selected image. <strong>4. Remarks</strong> If you have any remarks, bugs, questions etc. please tell me, I'd be happy to help.
# Sangoro A Ruby program to change the exif creation time stamp of JPEGs or PNGs.<br> # Installation To use the Sangoro tool you require: <ul> <li> <a href="https://www.ruby-lang.org/en/downloads/"><code>ruby</code></a> (v>=2.3.3) </ul> as well as the following Ruby gems: <ul> <li><code>fastimage</code> <li><code>fileutils</code> <li><code>gtk3</code> <li><code>mini_exiftool</code></li> </ul> On Mac you might need the exiftool installed. I recommend installing it using the Brew package manager: ```brew install exiftool``` Get the Sangoro tool by typing ```gem install sangoro``` in your command line. This will install the sangoro gem as well as the gems mentined above. Now you can just run ```sangoro``` in your command line. # Usage 1. Select a JPEG/PNG file by clicking on "Select image" 2. You will see the file name and the creation date & time on the right side, if available. 3. Now you can specify by how many hours, minutes and/or seconds you want the time stamp to move. You also need to choose whether to move the timestamp forward or back. 4. If you want to apply this change to all images in the folder, check the box below. 5. Click "Apply". 6. You are done. The exif creation timestamp of the selected image(s) was adjusted as specified. # Remarks If you have any remarks, bugs, questions etc. please tell me, I'd be happy to help.
== DESCRIPTION: Charlie is a library for genetic algorithms (GA) and genetic programming (GP). == FEATURES: - Quickly develop GAs by combining several parts (genotype, selection, crossover, mutation) provided by the library. - Sensible defaults are provided with any genotype, so often you only need to define a fitness function. - Easily replace any of the parts by your own code. - Test different strategies in GA, and generate reports comparing them. Example report: http://charlie.rubyforge.org/example_report.html == INSTALL: * sudo gem install charlie == EXAMPLES: This example solves a TSP problem (also quiz #142): N=5 CITIES = (0...N).map{|i| (0...N).map{|j| [i,j] } }.inject{|a,b|a+b} class TSP < PermutationGenotype(CITIES.size) def fitness d=0 (genes + [genes[0]]).each_cons(2){|a,b| a,b=CITIES[a],CITIES[b] d += Math.sqrt( (a[0]-b[0])**2 + (a[1]-b[1])**2 ) } -d # lower distance -> higher fitness. end use EdgeRecombinationCrossover, InversionMutator end Population.new(TSP,20).evolve_on_console(50) This example finds a polynomial which approximates cos(x) class Cos < TreeGenotype([proc{3*rand-1.5},:x], [:-@], [:+,:*,:-]) def fitness -[0,0.33,0.66,1].map{|x| (eval_genes(:x=>x) - Math.cos(x)).abs }.max end use TournamentSelection(4) end Population.new(Cos).evolve_on_console(500)
Version 1.0.1 Update Notes: -Updated README "HOW TO RUN" -I'm not sure how to format this so it looks good on the gems website so please just see the README file. USE CASES: 1. Your friends bully you because your imaginary role playing worlds are predictable and boring. 2. You like seeing chars printed in nifty patterns. HOW TO RUN: 1. Run `super_simple_world_builder` 2. Follow the prompts EXAMPLE INPUT: Guten Tag! Welcome to Super Simple World Builder. Enter 1 to build a random world Enter 2 to build a custom world Please enter your selection (1, 2, or exit): 2 Enter the name of your world: Community-Town Enter the minimum width of the world: 15 Enter the minimum height of the world: 15 What character do you want to fill the background of your world with? (i.e. any character or single space) How many lake features do you want? 3 How many mountain features do you want? 2 How many town features do you want? 3 How many forest features do you want? 4 OUTPUT: 1. Console print out of the world map 2. A text file of the world map ACHTUNG: 1. Don't worry if the width or height entered is too small. The world will automatically enlarge to fit all features. 2. World maps look better when you enter a <space> as the character to fill the background. 3. This is a quick-and-dirty project so yolo with the specs. I added comments as a consolation prize. 4. See `feature_set.rb` to tweak the features that can be added to the world map. 5. Interestingly, menu prompts may not show up in the git bash terminal. But they do show up in Windows command prompt, so lmao. 6. Feel free to tweak the code however you like. I plan to refactor in the future to dry up some sections.
A simple Gem to enable any `ActiveRecord::Base` object to store a set of attributes in a set like structure represented through a bitfield on the database level. You only have to specify the name of the set to hold the attributes in question an the rest is done for you through some fine selected Ruby magic. Here is a simple example of how you could use the gem: class Person < ActiveRecord::Base has_set :interests end To get this to work you need some additional work done first: 1. You need an unsigned 8-Byte integer column in your database to store the bitfield. It is expected that the column is named after the name of the set with the suffix `_bitfield` appended (e.g. `interests_bitfield`). You can change that default behavior by providing the option `:column_name` (e.g. `has_set :interests, :column_name => :my_custom_column`). 2. You need a class that provides the valid values to be stored within the set and map the single bits back to something meaningful. The class should be named after the name of the set (you can change this through the `:enum_class` option). This class could be seen as an enumeration and must implement the following simple interface: * There must be a class method `values` to return all valid enumerators in the defined enumeration. * Each enumerator must implement a `name` method to return a literal representation for identification. The literal must be of the type `String`. * Each enumerator must implement a `bitfield_index` method to return the exponent of the number 2 for calculation the position of this enumerator in the bitfield. **Attention** Changing this index afterwards will destroy your data integrity. Here is a simple example of how to implement such a enumeration type while using the the `renum` gem for simplicity. You are free to use anything else that matches the described interface. enum :Interests do attr_reader :bitfield_index Art(0) Golf(1) Sleeping(2) Drinking(3) Dating(4) Shopping(5) def init(bitfield_index) @bitfield_index = bitfield_index end end
== README.md: #ScheduledResource This gem is for displaying how things are used over time -- a schedule for a set of "resources". You can configure the elements of the schedule and there are utilities and protocols to connect them: - Configuration (specification and management), - Query interfaces (a REST-like API and internal protocols to query the models), and - A basic Rails controller implementation. We have a way to configure the schedule, internal methods to generate the data, and a way to retrieve data from the client. However this gem is largely view-framework agnostic. We could use a variety of client-side packages or even more traditional Rails view templates to generate HTML. In any case, to get a good feel in a display like this we need some client-side code. The gem includes client-side modules to: - Manage <b>time and display geometries</b> with "infinite" scroll along the time axis. - <b>Format display cells</b> in ways specific to the resource models. - <b>Update text justification</b> as the display is scrolled horizontally. ## Configuration A **scheduled resource** is something that can be used for one thing at a time. So if "Rocky & Bullwinkle" is on channel 3 from 10am to 11am on Saturday, then 'channel 3' is the <u>resource</u> and that showing of the episode is a <u>resource-use</u> block. Resources and use-blocks are typically Rails models. Each resource and its use-blocks get one row in the display. That row has a label to the left with some timespan visible on the rest of the row. Something else you would expect see in a schedule would be headers and labels -- perhaps one row with the date and another row with the hour. Headers and labels also fit the model of resources and use-blocks. Basic timezone-aware classes (ZTime*) for those are included in this gem. ### Config File The schedule configuration comes from <tt>config/resource_schedule.yml</tt> which has three top-level sections: - ResourceKinds: A hash where the key is a Resource and the value is a UseBlock. (Both are class names), - Resources: A list where each item is a Resource Class followed by one or more resource ids, and - visibleTime: The visible timespan of the schedule in seconds. The example file <tt>config/resource_schedule.yml</tt> (installed when you run <tt>schedulize</tt>) should be enough to display a two-row schedule with just the date above and the hour below. Of course you can monkey-patch or subclass these classes for your own needs. ### The schedule API The 'schedule' endpoint uses parameters <tt>t1</tt> and <tt>t2</tt> to specify a time interval for the request. A third parameter <tt>inc</tt> allows an initial time window to be expanded without repeating blocks that span those boundaries. The time parameters _plus the configured resources_ define the data to be returned. ### More About Configuration Management The <b>ScheduledResource</b> class manages resource and use-block class names, id's and labels for a schedule according to the configuration file. A ScheduledResource instance ties together: 1. A resource class (eg TvStation), 2. An id (a channel number in this example), and 3. Strings and other assets that will go into the DOM. The id is used to - select a resource _instance_ and - select instances of the _resource use block_ class (eg Program instances). The id _could_ be a database id but more often is something a little more suited to human use in the configuration. In any case it is used by model class method <tt>(resource_use_block_class).get_all_blocks()</tt> to select the right use-blocks for the resource. A resource class name and id are are joined with a '_' to form a tag that also serves as an id for the DOM. Once the configuration yaml is loaded that data is maintained in the session structure. Of course having a single configuration file limits the application's usefulness. A more general approach would be to have a user model with login and configuration would be associated with the user. ## Installation Add this line to your application's Gemfile: ```ruby gem 'scheduled_resource' ``` And then execute: $ bundle Or install it yourself as: $ gem install scheduled_resource Then from your application's root execute: $ schedulize . This will install a few image placeholders, client-side modules and a stylesheet under <tt>vendor/assets</tt>, an example configuration in <tt>config/resource_schedule.yml</tt> and an example controller in <tt>app/controllers/schedule_controller.rb</tt>. Also, if you use $ bundle show scheduled_resource to locate the installed source you can browse example classes <tt>lib/z_time_*.rb</tt> and the controller helper methods in <tt>lib/scheduled_resource/helper.rb</tt> ## Testing This gem also provides for a basic test application using angularjs to display a minimal but functional schedule showing just the day and hour headers in two different timezones (US Pacific and Eastern). Proceed as follows, starting with a fresh Rails app: $ rails new test_sr As above, add the gem to the Gemfile, then $ cd test_sr $ bundle $ schedulize . Add lines such as these to <tt>config/routes.rb</tt> get "/schedule/index" => "schedule#index" get "/schedule" => "schedule#schedule" Copy / merge these files from the gem source into the test app: $SR_SRC/app/views/layouts/application.html.erb $SR_SRC/app/views/schedule/index.html.erb $SR_SRC/app/assets/javascripts/{angular.js,script.js,controllers.js} and add <tt>//= require angular</tt> to application.js just below the entries for <tt>jquery</tt>. After you run the server and browse to http://0.0.0.0:3000/schedule/index you should see the four time-header rows specified by the sample config file. ## More Examples A better place to see the use of this gem is at [tv4](https://github.com/emeyekayee/tv4). Specifically, models <tt>app/models/event.rb</tt> and <tt>app/models/station.rb</tt> give better examples of implementing the ScheduledResource protocol and adapting to a db schema organized along somewhat different lines. ## Contributing 1. Fork it ( https://github.com/emeyekayee/scheduled_resource/fork ) 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create a new Pull Request
Contentful API wrapper library exposing an ActiveRecord-like interface
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.