Skip to content

Instantly share code, notes, and snippets.

View vladimir-bebeshko's full-sized avatar

Vladimir Bebeshko vladimir-bebeshko

  • Zaporizhzhya, Ukraine
View GitHub Profile
@vladimir-bebeshko
vladimir-bebeshko / LinkedText.swift
Created September 27, 2023 10:11 — forked from xenodium/LinkedText.swift
Tappable links in SwiftUI Text view
import SwiftUI
private let linkDetector = try! NSDataDetector(types: NSTextCheckingResult.CheckingType.link.rawValue)
struct LinkColoredText: View {
enum Component {
case text(String)
case link(String, URL)
}
@vladimir-bebeshko
vladimir-bebeshko / DefaultKeyBinding.dict
Created August 13, 2023 17:40 — forked from trusktr/DefaultKeyBinding.dict
My DefaultKeyBinding.dict for Mac OS X
/* ~/Library/KeyBindings/DefaultKeyBinding.Dict
This file remaps the key bindings of a single user on Mac OS X 10.5 to more
closely match default behavior on Windows systems. This makes the Command key
behave like Windows Control key. To use Control instead of Command, either swap
Control and Command in Apple->System Preferences->Keyboard->Modifier Keys...
or replace @ with ^ in this file.
Here is a rough cheatsheet for syntax.
Key Modifiers
@vladimir-bebeshko
vladimir-bebeshko / .vimrc
Last active December 27, 2024 13:17 — forked from simonista/.vimrc
A basic .vimrc file that will serve as a good template on which to build.
" Don't try to be vi compatible
set nocompatible
" Helps force plugins to load correctly when it is turned back on below
filetype off
" vim-plug: Vim plugin manager
" ============================
" Download plug.vim and put it in ~/.vim/autoload
"curl -fLo ~/.vim/autoload/plug.vim --create-dirs \
@vladimir-bebeshko
vladimir-bebeshko / iterm2_switch_automatic.md
Created November 9, 2021 08:35 — forked from FradSer/iterm2_switch_automatic.md
Switch iTerm2 color preset automatic base on macOS dark mode.

The latest beta (3.5) includes separate color settings for light & dark mode. Toggling dark mode automatically switches colors.

Vist iTerm 2 homepage to download the beta. Thanks @stefanwascoding.


  1. Add switch_automatic.py to ~/Library/ApplicationSupport/iTerm2/Scripts/AutoLaunch with:
@vladimir-bebeshko
vladimir-bebeshko / SwiftInST3.md
Created February 11, 2021 16:33 — forked from Star-Lord-XIII/SwiftInST3.md
Running Swift scripts from Sublime Text 3 in MacOSX10.11

##Adding Swift Build System

  • Open Sublime Text 3
  • Go To Preferences > Browse Packages...
  • Add a file named Swift.sublime-build inside Packages directory.
  • Copy the following script in Swift.sublime-build file.
{
 	"shell_cmd": "xcrun swift $file",
@vladimir-bebeshko
vladimir-bebeshko / Appending.swift
Created January 18, 2021 12:59 — forked from noahsark769/Appending.swift
Nested property wrappers with Swift
// https://noahgilmore.com/blog/nesting-property-wrappers
import Cocoa
protocol Appendable {
func appending(string: String) -> Self
}
extension String: Appendable {
func appending(string: String) -> String {
@vladimir-bebeshko
vladimir-bebeshko / NumberPadDoneBtn.h
Created December 31, 2020 14:29 — forked from matt-curtis/NumberPadDoneBtn.h
Done Button for UIKeyboard NumberPad (must be set as inputAccessoryView)
#import <UIKit/UIKit.h>
@interface NumberPadDoneBtn : UIView
@end
@interface NumberPadButton : UIButton
@end
@vladimir-bebeshko
vladimir-bebeshko / prepare-commit-msg
Last active October 13, 2023 19:20
Extract JIRA ticket name from the branch name and prepare commit message
#!/bin/bash
JIRA_TAG_PATTERN="mob-[0-9]+"
BRANCH_NAME=$(git rev-parse --abbrev-ref HEAD 2> /dev/null \
| grep -oiE "$JIRA_TAG_PATTERN" \
| tr '[:lower:]' '[:upper:]')
USER_MSG=$(cat $1)
MSG=$(echo $USER_MSG | tr '[:upper:]' '[:lower:]')
import SwiftUI
import WidgetKit
struct WaterAppTimelineProvider: TimelineProvider {
func placeholder(in context: Self.Context) -> WaterAppWidgetEntry {
return .previewData
}
func getSnapshot(in context: Self.Context, completion: @escaping (WaterAppWidgetEntry) -> Void) {
// Public domain - https://gist.github.com/nolanw/dff7cc5d5570b030d6ba385698348b7c
import Foundation
extension URLRequest {
/**
Configures the URL request for `multipart/form-data`. The request's `httpBody` is set, and a value is set for the HTTP header field `Content-Type`.
- Parameter parameters: The form data to set.