Be careful, multiple famous IoC containers are deprecated. At a first glance, it may seem fine to forgive lack of recent commits. After all, if it's mature, then all the basics are done and polished and bugless. In other words, if it the project would be active, then all the new commits would be just exlusively about advanced features. Right? No. The world of game development doesn't work like that. It must innovate rapidly and fretting about backward compatibility is not compatible with this reality.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Recursively for each PDF file make a 1st page JPEG nearby. | |
# Execute `$WhatIfPreference = 1` before running this script to dry run. | |
# (tip: dry run doesn't require Ghostscript at all, so in this way it's possible to simulate this script is before even actually installing the gs) | |
# Execute `$VerbosePreference = 'Continue'` before running this script to enable verbose output. | |
# Execute `$VerbosePreference = 'Inquire'` before running this script to be asked to confirm before each operation. | |
# (NOTE: the `$VerbosePreference = 'Inquire'` treats `[A] Yes to All` as simply `[Y] Yes` for some reason.) | |
# (Also any of the above can be copy-pasted right into this script itself but it's rather anti-idiomatic.) | |
# Where the PDFs are (reminder: this script is recursive but this can be changed easily, see below). |
- JetBrains Mono — Features, advantages, comparisons, gifs, the size of x-height is explained, it has everything.
- FiraCode
- Go — Explanation is almost text-only (no gif, almost no pics) but at least it exists.
- Input — The information on readability specifically is somewhat low on specific details and is intermixed with a extensive explanation of overall philosophy and other considerations. But at least it's there.
- Hack — The prioritized range of sizes is made very clear. Also the 3 most noticable/impactful decisions are included (in the same sentence). Otherwise, nothing is explained.
- Victor Mono — Only the overall idea is explained, not particular small decisions.
- The Julia — Many examples and screenshots, not much explanation.
- [Iosevka
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// See _common.md to learn what strings PageCategory, PageName and PropertyName are supposed to contain. | |
const string PageCategory = "Foo"; | |
const string PageName = "Bar"; | |
const string PropertyName = "Baz"; | |
var dte = (DTE2)Microsoft.VisualStudio.Shell.Package.GetGlobalService(typeof(DTE)); | |
var props = dte.Properties[PageCategory, PageName]; | |
// Read: | |
// Note that this can throw an exception if such property wasn't saved yet. |
Settings Browser → Code Browsing → Code Completion → Case Sensitive
(Use it only if you prefer dark themes, of course.)
- Settings Browser → Appearence → User Interface theme → Dark
- Settings Browser → Code Browsing → Syntax Highlighting → Dark
- Reopen your windows, because settings above won't be fully applied to already opened windows.
When it comes to Vim emulators, how to do an advanced operation is not the hard part. The hard part is remembering/recognizing that some routine operation can be helped by Vim.
Useful for understanding sloppily/poorly written legacy code. Given a bunch of methods like this:
private void ConfusinglyNamedAndConfusinglyUsedMethod()
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
namespace UnityEngine | |
{ | |
using System; | |
using System.Runtime.InteropServices; | |
using UnityEngine.Assertions.Must; | |
[StructLayout(LayoutKind.Auto)] | |
internal struct BoundsInt | |
{ | |
private Vector3i _min; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using System; | |
using System.Collections.Generic; | |
#if UNITY_EDITOR | |
using System.Reflection; | |
using System.Linq; | |
#endif | |
public static class Extensions | |
{ | |
#region float |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
using Microsoft.CSharp; | |
using System.CodeDom; | |
using System.CodeDom.Compiler; | |
using System.Collections.Generic; | |
using System.Collections.ObjectModel; | |
using System.Collections.Specialized; | |
using System.IO; | |
using System.Linq; | |
using System.Reflection; | |
using System.Text; |